在选择时如何在UITableViewCell中保留或动画子视图背景颜色?

时间:2009-06-11 20:56:08

标签: iphone cocoa-touch uiview uitableview

我有一个UIView作为UITableViewCell的自定义子类的子视图。我用它来动态地改变单元格的一小块区域的颜色。

当我选择单元格时,整个单元格的背景颜色(包括子视图的背景颜色)将更改为蓝色。那很好,它瞬间发生。选择向下钻到另一个视图控制器。

但是,当我从视图控制器返回时,它会再次将背景从蓝色变为白色 - 但它不会为我的子视图的背景颜色设置动画。效果是蓝色动画为白色,然后突然变回原来的颜色。

我如何

  • 免除此子视图的背景颜色,
  • 或过渡动画,以便我的颜色很好地返回?

谢谢!

1 个答案:

答案 0 :(得分:4)

以下说明如何设置颜色更改动画:

UIView * blue = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 300, 20)];
[self.view addSubview:blue];
blue.backgroundColor = [UIColor whiteColor];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1];
blue.backgroundColor = [UIColor blueColor];
[UIView commitAnimations];
[blue release];

希望您可以根据自己的需要进行调整。

汤姆