【问题标题】:iOS Simulator doesn't show prototype celliOS 模拟器不显示原型单元格
【发布时间】:2014-07-31 15:21:21
【问题描述】:

我目前正在通过教程学习 Objective-C(“iOS Apprecente”) 现在我需要做一个清单

我在viewController.h中添加了

@interface ViewController : UITableViewController 

正常的站着

@interface ViewController : UIViewController

接下来是去 Storyboard 的地方有一个TableViewController,给它起个名字:ChecklistsViewController (Identity inspector > Custom class > class. 我在第一个表格视图单元格中添加了一个标签。但是当我运行它时,什么都没有。

怎么办?

【问题讨论】:

    标签: ios objective-c uitableview


    【解决方案1】:

    这里有两个单独的问题:

    1. 选择UIViewController 和您自己的IBOutlet 用于表视图或UITableViewController 只是一个问题,即在Interface Builder (IB) 中,您是否添加了一个标准视图控制器添加了表格视图,或者您是否使用了表格视图控制器。如果除了表格视图之外,您在视图上还有其他控件,则使用前者。如果表视图是该视图控制器视图中唯一呈现的内容,您通常会使用后者。最重要的是,您对UIViewControllerUITableViewController 的选择取决于您在IB 中添加场景的方式。根据您的描述,听起来您采用了UITableViewController 方法,这很好。

    2. 就您看不到任何东西的原因而言,有很多可能的原因:

      • 您是否为表格视图单元格原型指定了单元格标识符?它与您在 cellForRowAtIndexPath 方法中使用的标识符相同吗?

      • 如果您手动将表视图添加到标准视图控制器的视图中,您是否将视图控制器指定为表视图的delegatedataSource?另外,您是否为表格视图本身创建了IBOutlet,并将其连接到 IB 中? (如果您在 Interface Builder 中使用了表格视图控制器,则不必执行这些步骤。)

      • 您可能需要再次检查表视图控制器的基类是否已在 IB 中正确设置。

      • 您是否实现了所有UITableViewDataSource 方法,尤其是numberOfRowsInSection?如果不这样做,则会得出没有行的结论,并且不会生成任何单元格。

      • 您说您在 IB 中指定视图控制器的基类为 ChecklistsViewController。但是在您的代码 sn-ps 中,您似乎正在使用一个名为 ViewController 的自定义类。确保您对两者使用相同的 UITableViewController 子类。

    【讨论】:

    • 感谢您抽出时间回答一个非常广泛的问题。
    • 感谢它提供的简短信息,第 2 点的第二个点是解决问题的答案。
    • 优秀。我的我建议你考虑接受我的回答?见What Should I Do When Someone Answers My Question?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-10
    • 2013-02-11
    相关资源
    最近更新 更多