WORKGROUND
使用UIView
和UILabel
创建UIButton
。在这里,我在下面设置了UIButton
的图层属性:
[self.btnDropdown.layer setBorderColor:[UIColor lightGrayColor].CGColor];
[self.btnDropdown.layer setBorderWidth:0.8f];
[self.btnDropdown.layer setCornerRadius:4.0f];
现在我使用NSCoding
将此自定义视图保存到文件中并加载相同的内容。此控件显示在UITableViewCell
中。
问题:
自定义视图的所有详细信息,例如UILable
标题,大小,背景颜色等。UIButton
的相同内容均从文件中检索。但是我没有检索到为CALayer
设置的UIButton
相关详细信息。
保存到文件之前:
从文件中获取:
所以我不清楚使用CALayer
对象管理UIButton
属性。
这些详细信息(CALAyer
值)是否仅在运行时可见?或者我错过了什么?
如果您不清楚问题,请添加评论。
修改
以前我没有提供更多信息来降低问题的复杂性。下面是我实现的完整层次结构。
NSObject - >自定义视图 - > UIButton - > CALayer的
1)第一个NSObject
类是一个bean类。其中包含一些变量(我称之为Property)。此属性是自定义视图的元详细信息。 There is one variable "parentView" is use to store Custom view.
2)自定义视图:这是UIView
类,其中包含UILabel
和UIButton
现在bean类对象(Property)存储在文件中并重试。这样我就可以使用变量parentView
来加载自定义视图。
并且关于UIButton
的问题是嵌入在自定义视图中的。
答案 0 :(得分:0)
搞清楚:
此处按钮显示在图像自定义视图中。我曾经使用BLOB
将这些控件保存在本地数据库中。
事情就是这些视图对象/实例存储在具有一些属性的数据库中。
现在,当我检索它们并将它们作为子视图添加到任何视图时,它们的-init
方法不会被调用。 (我怎么知道这一点)并为这些视图调用了-init
方法。