动画更改为uitableviewcell的背景颜色

时间:2012-03-09 22:36:24

标签: iphone ios uitableview uianimation

当从表格视图中选择一个单元格时,我希望单元格的背景颜色从白色(或透明)变为黑色,我希望颜色的变化能够被动画化。这可能吗?

我知道某些技巧对于改变uitableview单元格的背景颜色是必要的,我在很大程度上理解这些技巧,但我想更进一步,并对单元格背景颜色的变化进行动画处理。我假设这将在didSelectRowAtIndexPath:方法中完成。

2 个答案:

答案 0 :(得分:3)

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.8];
    [self.tableView cellForRowAtIndexPath:indexPath].imageView.alpha = 1.0;
    [self.tableView cellForRowAtIndexPath:indexPath].backgroundColor=[UIColor redColor];

    [UIView commitAnimations];   
}

答案 1 :(得分:0)

据我所知,我们无法为颜色变化制作动画。 我们能做的是用一个计时器来改变颜色。这个想法是,给定两种颜色,startColor和endColor,可以很容易地找到中间颜色(比方说20)。然后使用NSTimer我们可以在定期间隔后将颜色属性设置为每种不同的颜色。 这样,我们就可以有一个从startColor到endColor的平滑过渡/动画。

如果有人需要代码,那么我也可以为此提供代码。

相关问题