在界面构建器中设计的自定义视图未显示

Posted

技术标签:

【中文标题】在界面构建器中设计的自定义视图未显示【英文标题】:Custom view designed in interface builder not showing 【发布时间】:2012-11-05 09:26:11 【问题描述】:

我创建了一个 nib 文件“tableHeaderView”,在其中添加了一些标签和图像。 然后,我创建了一个新类“tableHeaderViewClass”作为 UIView 的子类,并将 nib 文件中的不同元素连接到该类。 然后在界面生成器中,我将 nib 文件的自定义类属性设置为:tableHeaderViewClass

在我的表格视图控制器中,我希望我能做到以下几点:

tableHeaderViewClass *headerview = [[tableHeaderViewClass alloc] initWithFrame:frame];
headerview.titlelabel.text = @"Something";
[self.tableView setTableHeaderView:headerview];

但是什么也没发生。除了框架定义的空间外,没有任何视图元素。 我错过了什么?

【问题讨论】:

【参考方案1】:

如果您创建了一个 nib,则从 NSBundle loadNibName 为您的自定义视图获取一个实例

tableHeaderViewClass *headerview = [[[NSBundle mainBundle] loadNibNamed:@"tableHeaderViewClass" owner:self options:nil] lastObject];
headerview.titlelabel.text = @"Something";
[self.tableView setTableHeaderView:headerview];

我假设你的笔尖名称是“tableHeaderViewClass”

【讨论】:

以上是关于在界面构建器中设计的自定义视图未显示的主要内容,如果未能解决你的问题,请参考以下文章

表格视图中的自定义单元格未显示?

来自故事板的表格视图单元原型未初始化子视图

自定义 UITableViewCell 快速滚动

在 Storyboard 中设计的自定义 UITableViewCell 中的自定义 UIView

显示今天视图小部件内容的正确方法

按钮未显示在android的自定义列表视图中