如何用两层实现drawLayer:inContext?

时间:2012-07-16 05:53:52

标签: cocoa-touch uiview core-graphics calayer

我可以两次实施drawLayer:inContext:,每层一个吗?

例如:

CALayer *layer1 = [CALayer layer];
layer1.frame = self.view.frame;
[self.view.layer addSubLayer:layer1];

CALayer *layer2 = [CALayer layer];
layer2.frame = self.view.frame;
[self.view.layer addSubLayer:layer2];

现在我有两层(除了UIView中已经包含的层),我希望每个层根据drawLayer:inContext:方法实现不同的“动作”。那么我如何让每一层执行特定的操作呢?我应该使用performSelector:吗?请给我任何提示或建议。谢谢!

1 个答案:

答案 0 :(得分:0)

我找到了解决方案here。您所要做的就是保持对当前使用的图层的引用。然后使用if..else...或switch语句根据您使用的当前图层执行drawLayer:inContext:中的操作。