【发布时间】:2010-08-28 21:18:07
【问题描述】:
我有一个名为 OptionsTableViewController 的类,它继承了 UITableViewController。我将超类更改为实现 UITableViewDelegate 和 UITableViewDataSource 协议的 UIViewController,因为我需要 tableView 处于特定位置。
现在一些表格单元格有一个 UISwitch 作为附件视图。开关是一个实例变量,用CGRectZero初始化。
将超类更改为 UIViewController 时,不会显示开关。但是,当我也重命名该类(到 OptionsViewController f.e.)时,它可以工作。
有人知道这种奇怪的行为是从哪里来的吗? 我还尝试清理项目,甚至删除了构建文件夹 - 但似乎唯一的解决方案是重命名类。
我之前也遇到过类似的问题,除非重命名类,否则不会显示整个表格视图。
【问题讨论】:
-
您确定
accessoryView已正确设置吗?您能否成功记录所有附件视图以查看它们是否已真正设置?真的不可能是因为它的名字的类,应该有something错误somewhere。 -
这就是我设置附件视图的方式:
cell.accessoryView = _switch;其中开关是初始化如下的实例变量:_switch = [[UISwitch alloc] initWithFrame:CGRectZero];记录附件视图是什么意思?我设置了一个刹车点,应用程序在此时停止。所以命令肯定会执行。我还尝试将一个开关作为子视图添加到视图(而不是表视图),但这也行不通。我假设,该类的名称在项目中的某处使用,但不在我编写的代码中。
标签: iphone xcode uiviewcontroller uitableview uiswitch