如何子类化 CALayer 以便返回已设置样式属性的图层?
这样:
MyCustomLayer *layer = [MyCustomLayer layer];
将创建一个具有这些属性的图层;
layer.backgroundColor = sweetBackgroundColor.CGColor;
layer.borderColor = sweetBorderColor.CGColor;
layer.borderWidth = 2.0;
layer.cornerRadius = 8.0;
这样我就可以设置它的框架并将其添加到树中。
但我想我的问题实际上可能是,如何对对象进行子类化,以便它具有在创建时已设置的属性。可能吗?
最佳答案
只需在子类中重写 -init(CALayer 的指定初始化程序),并在重写中设置这些属性。任何创建方法,包括 -layer,最终都应该通过指定的初始化器进行路由,这意味着即使对于方便的构造函数,您的额外设置也会发生。
关于objective-c - 如何子类化 CALayer 以返回预先设置样式的图层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/823135/