看起来在UIView上调用[self setNeedsDisplay]
不会导致 [self.layer setNeedsDisplay]
。它是正常的,如果我重写setNeedsDisplay
如下:UIView setNeedsDisplay调用CALayer的setNeedsDisplay?
- (void)setNeedsDisplay {
[super setNeedsDisplay];
[self.layer setNeedsDisplay];
}
这会不会给我惹麻烦?也许有更好的办法? 谢谢
你为什么认为你需要这个? – 2012-01-14 22:24:39
我想调用'[myView setNeedsDisplay]'方法,而不必调用'[myView.layer setNeedsDisplay]'。我在UIView子类中设置了一个精心制作的CALayer层次结构。 – Ana 2012-01-14 22:41:51
为什么你需要调用'[CALayer setNeedsDisplay]'?调用'[UIView setNeedsDisplay]'会导致它在运行循环结束时触发它的'-drawRect:'。你还想做什么? – 2012-01-14 22:51:58