为什么只有重命名该类才能看到UISwitch?

时间:2010-08-28 21:18:08

标签: iphone xcode uiviewcontroller uitableview uiswitch

我有一个名为 OptionsTableViewController 的类,它继承了 UITableViewController 。我将超类更改为 UIViewController 实现 UITableViewDelegate UITableViewDataSource 协议,因为我需要tableView处于特定位置。

现在有些表格单元格有一个 UISwitch 作为accessoryView。该开关是一个实例变量,使用 CGRectZero 初始化。

将超类更改为 UIViewController 时,不会显示开关。但是,当我也重命名该类(到 OptionsViewController f。)时,它可以工作。

有人知道这种奇怪的行为来自哪里吗? 我也尝试清理项目,甚至删除了构建文件夹 - 但似乎唯一的解决方案是重命名该类。

之前我遇到过类似的问题,除非重命名该类,否则不会显示整个表视图。

2 个答案:

答案 0 :(得分:0)

您是否检查了名称OptionsTableViewController和OptionsViewController是否在整个项目的其他任何位置使用,包括在Interface builder nib文件中?您是否酌情更改了所有名称?

答案 1 :(得分:0)

我找到了这个问题的原因。虽然搜索项目XCode找不到任何名为OptionsTableViewController的文件,但我发现它包含在Targets - >下。程序的名字。清除所有目标后文件不会消失,因此最好知道那里仍然存在部件。