0

我对 iOS 编程非常陌生,只是尝试设置一个选项卡视图,包括一个普通视图和一个表格视图。

现在有一个问题,表格视图不会更新。所有单元格始终为空。

这就是我声明 ViewController 的方式:

@interface SecondViewController : UITableViewController {

根据我的日志,所有代表都被正确调用,甚至我在此方法中的日志也被打印到控制台。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CooperCell"];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"CooperCell"];
    }

    NSLog(@"test");

    cell.textLabel.text = @"test";    
    return cell;
}

“测试”是记录 3 倍,因为我的数组大小为 3。所以我不明白为什么它不会显示。当然,我通过情节提要为单元格赋予了标识符“CooperCell”。我错过了其他要链接的东西吗?

我的 SecondViewController.h 看起来像这样:

@interface SecondViewController : UITableViewController {
    NSManagedObjectContext *managedObjectContext;
    NSMutableArray *eventArray;
}

@property (nonatomic, strong) NSManagedObjectContext *managedObjectContext;
@property (nonatomic, strong) NSMutableArray *eventArray;

- (void) fetchRecords;

@end

我正在使用本教程:http: //mobile.tutsplus.com/tutorials/iphone/iphone-core-data/

也许我真的把故事板搞砸了?

我创建了一个新的 Tab 控制项目。然后我删除了第二个视图控制器并放置了一个 TableViewController 并继续使用我的 SecondViewController.h 和 .m 文件

4

3 回答 3

2

检查您是否已将故事板中的表格视图连接到 .h 文件中的 IBOutlet 变量 UITablveView。你提到你已经链接了单元格。不确定这是正确的做法。

其他可能性是您尚未将情节提要上的视图控制器标识为您的类名(SecondViewController)。

如果在尝试/确认这些后仍无法正常工作,那么也分享您的 .h 文件。我们将能够提供更多帮助。

在此处输入图像描述

于 2013-09-07T14:19:08.893 回答
0

看看是否调用了 reloadData 来刷新表的内容

于 2013-09-07T14:39:03.197 回答
0

当您创建第二个视图控制器(SecondViewController)作为 UITableViewController 时,您不需要单独设置表视图数据源或委托。UITableViewController 带有一个默认的表格视图和一个自定义的 TableView 单元格。所以,我不认为,您缺少任何指向 tableview 数据源的链接。

在此处输入图像描述

让我们做一些故障排除。

(PS:这只是我会做的。以下不是任何标准,只是根据我的经验。)

测试1:

你说,你用的是Basic。尝试将其更改回自定义表格视图样式。现在在 cellForRowAtIndexPath 方法中也将单元格类型更改为 UITableViewCellStyleDefault 。

就像是-

if (cell == nil) {
    cell = [[UITableViewCell alloc] UITableViewCellStyleDefault reuseIdentifier:@"CooperCell"];
}

立即尝试构建您的代码。

测试 2:

检查您是否已将第二个视图控制器连接到情节提要中的选项卡栏项目。

立即尝试构建您的代码。

测试 3:

最后,在情节提要中,检查您是否已将自定义类设置为 SecondViewController。我想有人已经为此发布了一张图片

立即尝试构建您的代码。

于 2015-01-28T08:24:27.537 回答