1

解析本地 XML 文件时,我可以使用 NSLog 在控制台中查看数据。在模拟器中,我只获得了没有从 xml 解析的任何数据的普通表视图。我不明白我在哪里错过它。

故事板

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath   
{
     static NSString *CellIdentifier = @"Cell";
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];     
     if(cell == nil){    
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault   reuseIdentifier:CellIdentifier];      

    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;  
    }  

    theLists = [app.listArray objectAtIndex:indexPath.row];
    cell.textLabel.text = theLists.title;  
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    return cell;
}
4

5 回答 5

2

我认为您没有重新加载表格视图。完成解析后,只需重新加载表格视图。

[重新加载表名];

然后检查您的表视图委托是否在此方法之后调用。我想这会对你有所帮助。

快乐编码。

于 2012-11-21T11:17:44.793 回答
0

看来您正在在 DidLoad 中重新加载。但是在解析并从 xml 获取数据之后,您必须使用 TableView 重新加载该数据。

[yourtableView reloadData];

在做之前,确保你已经设置了 Delegate 和 DataSource。

于 2012-11-21T12:10:09.890 回答
0

我认为有两个预期的原因:

1- 可能是节数和行数没有设置正确的值。

2-可能是您需要重新加载表格视图数据。

请检查这两种方法:

    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{

return 5; // or any number you want

}
于 2012-11-21T12:21:03.580 回答
0

我终于得到了答案,我没有正确地将 tableview 控制器类与相应的控制器连接起来。我按照链接麻烦与故事板建立联系

最后它在表格视图中显示了数据。希望这个答案可以帮助其他人。感谢所有在这篇文章中提出建议的人。

于 2012-11-21T13:00:44.683 回答
0

如果您在数据未显示或加载时遇到问题,我想我应该添加这个。

确保您的 tableview 委托和数据源设置为 self。

所以在 viewcontroller 的 viewDidLoad() 函数中,确保添加

tableView.delegate = self
tableView.dataSource = self
于 2016-10-27T20:04:38.080 回答