0

我正在使用 Xcode 版本 5.0 (5A1413) 并针对 iPhone 的 iOS7。我只有一个带有表格视图的 UIViewController。我发现的所有内容都说只需设置表的数据源并委托给 ViewController。无论我做什么,应用程序都会立即崩溃。即使根本没有手动编写代码,视图也永远不会加载。是否不再可能将表格放到非 TableViewController 上?

4

5 回答 5

0

Delegate将and添加Datasource到界面:

@interface MyViewController : UIViewController 
                              <UITableViewDataSource, UITableViewDelegate>
于 2013-10-13T00:23:18.840 回答
0

iOS 7.0 没有此类限制。您仍然可以将 UIViewController 作为 UITableView 的数据源和委托。您只需要实现这些协议设置的所有强制方法。您能否用您的代码和导致崩溃的异常更新您的问题。如果没有这些信息,就很难提供解决方案。

我对看到您的 cellForRowAtIndexPath 构建单元格和重用它们的方式特别感兴趣。

于 2013-10-20T18:13:42.383 回答
0

这是答案 -如何将静态 TableView 添加到 ViewController 确实您需要实现所需的方法。

于 2013-10-20T17:32:58.417 回答
0

您应该从 UITableViewDataSource 实现所有必需的方法以防止崩溃:

  @required

  - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
于 2013-10-13T07:04:16.837 回答
0

我认为你犯了一个初学者常见的错误。您删除了 Interface Builder 中的主视图,然后添加了一个表视图。

您必须知道 UIViewController 类有一个称为 view 的 UIView 属性。默认情况下,此属性设置为使用 nib(或 Storyboard)文件创建的视图。

要说表视图是主视图控制器的视图,您必须从文件所有者右键单击表视图并选择“视图”。

如果您对此方法不满意,另一种方法是在第一个视图中设置表格视图。

于 2013-10-13T09:16:47.833 回答