所以昨天我开始学习iOS编程,然后我按照了待办事项的教程。https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/SecondTutorial.html#//apple_ref/doc/uid/TP40011343-CH8-SW1
我已经创建了我自己的tablelistviewcontroller,因为指南告诉我,当我启动时,我以前的所有静态数据都消失了,教程告诉我这个
你会注意到它实现了三个方法-numberOfSectionsInTableView:,tableView:numberOfRowsInSection:和tableView:cellForRowAtIndexPath:。您可以通过注释掉这些方法的实现来再次显示静态数据。如果你愿意,可以试一试。
所以我注释掉了cellForRowAtIndexPath,它是唯一被注释掉的。然后我在“reuseIdentifier”上得到一个错误,所以经过一段时间的谷歌搜索,我设法命名我的单元格“细胞”,我最终得到了这个代码,
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cells";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
return cell;
}
但是每次我构建并启动应用程序时,我都无法看到我以前的数据,我可以在我的故事板中看到它,但不能在应用程序中看到...而现在我的想法不足,因为我是新手,我相信解决方案很容易。
如果您需要任何其他数据,请通知我们。
答案 0 :(得分:0)
我认为你真的误解了这些界限:
那么为什么你的数据不显示?表视图有两种获取方式 数据静态或动态。当一个表视图的控制器 实现所需的UITableViewDataSource方法,即表视图 询问其视图控制器是否显示数据,无论是否 在Interface Builder中配置了静态数据。如果你看看 XYZToDoListTableViewController.m,你会发现它实现了 三个方法-numberOfSectionsInTableView:, tableView:numberOfRowsInSection:,和 的tableView:的cellForRowAtIndexPath :.您可以获取静态数据 通过注释掉这些方法的实现再次显示。 如果你愿意,可以试一试。
当您使用应用添加数据时,数据不再是static
。它是dynamic
。 UITableView
不会存储您的数据。它只显示它。当您使用动态数据时,您需要datasource
,以便显示tableView
数据。您必须通过IOS中的一些可能的存储机制存储数据。这是一个tutorial which will get you started with Core Data的链接。
这是一个很好的tutorial which will get you started with UITableView
,它会显示动态数据。
问题是你的概念完全错了。
修改强>
您可能在接口文件中添加了<UITableViewDataSource>
之类的内容,并且可能已添加ViewController
作为表格的数据源(使用ctrl-drag在故事板或tableView.datasource = self;
中代码)。只需删除这两个,您的静态内容就会再次显示。