0

我有一个 TableViewController,它是PFQueryTableViewController.
它显示动态 TableViewCells 的子类PFTableViewCell,并具有 2 个类型的自定义属性IBOutlet UILabel
两者都设置在故事板中,如下图所示。
在此处输入图像描述
不同视图的背景已被着色以使视图可见。请注意,两个标签的文本大小设置相同,均为 12pt。
tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath object:(PFObject *)object我设置两个标签

cell.dateLabel.text = stringFromDate; // the date is set earlier
cell.activityLabel.text = @"Test";

现在,当我运行应用程序时,会显示以下图片:
在此处输入图像描述
请注意 1) 文本书写正确,但 2) 背景没有着色,3) 只有日期字段的文本大小为 12 pt,而活动标签大小为 17 pt,3) 活动标签的高度不是故事板中定义的,而是更小。

当然,单元格标签设置正确,并且“正确”单元格已出列(否则我无法访问自定义属性)。属性也正确链接(否则文本将无法正确显示)。
在我的表格视图控制器中,我没有任何覆盖表格视图单元格的情节提要设置的委托方法。

所以我的问题是:

为什么我的表格视图单元格的情节提要设置仅部分使用(第一个标签的文本大小)但大多数都被忽略了(第二个标签的背景颜色、高度和文本大小),我必须做什么做什么才能使其正常工作?

4

1 回答 1

0

问题解决了!似乎是一个 Xcode6 错误:

由于我觉得使用的是旧版本的故事板,我从模拟器中删除了该应用程序,然后再次启动该应用程序。该应用程序立即崩溃,并出现错误“<em>在捆绑包 NSBundle 中找不到名为 'Main' 的故事板...”。
然后我意识到项目导航器中有 2 个对同一个故事板的引用,并删除了一个。
我查看了错误消息中给出的文件路径,并意识到故事板不再包含在目标中。
为了将它再次包含在目标中,我在项目导航器中打开了故事板作为源代码 - 然后才向身份检查器显示该文件的属性(当像往常一样将其作为界面构建器文件打开时,身份检查器窗口为空)。事实上,目标成员资格复选框未被选中。再次检查后,崩溃不再发生,并且使用了正确的表格视图单元格设置。

所以问题是模拟器使用了旧版本的故事板,因为新的故事板不包含在目标中,因此旧的故事板没有更新。

于 2015-04-20T05:13:34.327 回答