UIView动画在drawrect

时间:2013-03-12 07:31:09

标签: ios ios5 drawrect uiviewanimation

我需要不断更改我在UIView中绘制的所有线条的颜色。我在drawrect方法中绘制了所有的线来分配颜色。现在,只要显示视图,我就需要动画并更改颜色。有办法吗?非常感谢!

2 个答案:

答案 0 :(得分:3)

考虑为每一行使用CAShapeLayer的一个实例,而不是在drawRect:中绘制它们。您可以根据需要为每个图层的pathstrokeColor属性设置动画。

修改

如果您只是绘制水平线条,那么您最好只使用UIView。设置backgroundColor而不是实施drawRect:。您可以使用frame(或更强大的变体)为backgroundColor属性和+[UIView animateWithDuration:animations:]属性设置动画。这通常比搞乱Core Animation更简单。

答案 1 :(得分:2)

生活和学习。动画最好在-drawRect:

之外完成

将您的“行”更改为添加为(最好是不透明的)子视图的个人UIView个实例。然后,您可以在视图上设置相应的backgroundColor

然后,您可以使用简单的UIView动画为它们设置动画。