我有一个XIB
用于两个不同的视图,因为视图非常相似。在XIB
我有一个小视图,基本上是一个垂直线作为分隔符。在一个视图中我想要分隔符,在另一个视图中我不想。
我已将xib链接到其.h文件,我可以通过其他类访问该视图。
Cell.xib - 其中包含我正在讨论的视图分隔符,即UIView * cellSeparator
HomeTableVC.h 这也是xib链接的地方。所有xib元素都链接到这个.h文件。
ChatTable.h / ChatTable.m -
//ViewDidLoad
HomeTableVC* homeTable = [[HomeTableVC alloc] init];
homeTable.cellSeparator.hidden = YES;
所有内容都可以编译并运行正常,但cellSeparator
不会被隐藏。
我已尝试将其放入loadView
,viewDidLoad
,我已尝试在mainThread
中调用它,但我似乎无法以编程方式隐藏此UIView 。
我已经考虑过制作XIB但是如果我可以隐藏这个UIView并且没有几乎重复的xib那么这似乎很愚蠢。
感谢任何帮助。感谢。
编辑:我尝试的另一种方法是为cellSeparator设置TAG并通过其标签访问视图,但它仍然不会隐藏。
答案 0 :(得分:0)
问题在于:
HomeTableVC* homeTable = [[HomeTableVC alloc] init];
homeTable.cellSeparator.hidden = YES;
您实际上并没有隐藏IBoutlet
(将XIB组件连接到类文件)的分隔符,而是创建了无法访问XIB组件的新HomeTableVC
实例。