【发布时间】:2013-08-29 00:48:32
【问题描述】:
我将图层添加到我的视图中:
[self.layer insertSublayer:_gradient above:_another.layer];
然后它似乎并没有被删除,即使我在超级层上调用 needsDisplay:
[_gradient removeFromSuperlayer];
我怎样才能删除它?
【问题讨论】:
-
removeFromSuperlayer有效,不需要setNeedsDisplay。还有什么不对劲的。当您调用removeFroMSuperlayer时,您确定_gradient仍然设置(非零)吗? -
是的,我把它放在 _gradient 的 if 块中!= nil
-
即便如此,如果_gradient为nil,它也不会被移除
-
你能编辑和分享更多代码来向我们展示你在做什么吗?这应该有效。调用 removeFromSuperlayer 然后在 if(_gradient) 块中将层设置为 nil 过去一直对我有用。
标签: ios uiview calayer cagradientlayer