【发布时间】:2012-02-11 18:13:53
【问题描述】:
我在 .xib 中创建了一个静态表格单元格,但是当它显示时,未应用在 xib 中设置的单元格高度,而是以看起来像单元格的默认高度显示的单元格。
我的设置如下:
1) 表格视图控制器派生自 UITableViewController
2) TVC 不包含在 xib 中,而是在应用程序委托中的代码中创建并添加到选项卡栏控制器。
3) TVC 是使用 initWithNibName:bundle: 创建的,nib 名称作为包含表格视图和静态表格单元格的 xib 名称提供。
4) TVC 有一个 UITableViewCell* 类型的 IBOutlet iVar
5) cellForRowAtIndexPath 返回此 iVar。
6) numberOfRowsInSection 返回 1,numberOfSectionsInTableView 返回 1;
7) xib 包含一个表视图,它连接到文件所有者的视图。文件的所有者设置为我的自定义表格视图控制器类。
8) xib 中的 UITableViewCell 连接到 File's Owner 中 UITableViewCell 类型的 outlet。
9) xib 中的表格视图样式设置为分组。
10) 大小检查器中显示的 Table View Cell 的大小为 N,这就是问题所在。如果我手动更改 N 或通过调整单元格视觉表示的大小,则在绘制表格时不会应用此大小。我还尝试在尺寸检查器中设置视图框架矩形高度以匹配。 N 的大小无关紧要。
11) 单元格的高度没有在 TVC 中的任何位置设置,如果我使用 self.tableView.rowHeight 设置它,那么它的高度确实会改变。但我不想像这样明确设置,我希望 xib 中的高度大小被拾取。
这几天让我发疯了,并且阅读了几篇关于表格视图的教程(包括 Apple 的表格视图编程指南,尤其是关于静态单元格的部分,我首先按照其说明进行了设置)没有给我任何线索,问题出在哪里。
TIA
【问题讨论】:
标签: ios