如何让reloadData在UITableView上工作

时间:2011-02-08 19:34:16

标签: ios uitableview

我有一个从NIB文件加载的UITableView。屏幕控制器是UIViewController的子类,符合UITableView委托协议。这是由UINavigationController管理的一堆视图中的第二个屏幕。

在我的viewWillAppear中,对于有问题的视图,我运行了两个NSFetchRequests,并使用这些NSFetchRequests的结果更新了我表中3个部分中的2个部分。在viewWillAppear的底部,我调用

[self.myTable reloadData];

myTable是屏幕的UITableView的IBOutlet。

无论出于何种原因,表都没有重新加载数据,当我从导航控制器层次结构中更深层的视图返回时,没有调用表的任何委托方法。

如何让表重新加载?

感谢。

2 个答案:

答案 0 :(得分:6)

使用:

而不是self.tableView
[myTable reloadData];

因此,如果您将IBOulet定义为 myTable ,则需要使用该名称。

如果你在标题中初始化了myTable,

self.myTable会起作用:

self.myTable = [[UITableView alloc] initWithFrame:CGRectZero];

答案 1 :(得分:1)

您是否还将UITableView链接到nib文件中的数据源和委托出口?除了IBOutlet之外,您还必须将这两者联系起来。