UITableView reloadData

时间:2011-03-22 12:54:47

标签: iphone nsmutablearray

我有一个包含UITableView的UIViewController。

我正在尝试使用从XML文件解析的数据来填充此表。

TableView第一次加载数据尚不可用。

重新加载此视图的最佳方法是什么?

我在解析完成后尝试做一个self.TableView reloadData。

不幸的是,在reloadData期间,保持解析结果的NSMutableArray会重置。

数组在UIVivewController设置。

我应该将NSMutablearray设置为全局变量吗?

收了一堆

3 个答案:

答案 0 :(得分:8)

数组应该是包含UITableView的视图控制器的ivar(实例变量)。完成解析后,应该使用数据填充ivar,您应该能够使用UITableView填充[self.TableView reloadData]没有问题。确保您没有删除所有对象或在任何委托或数据源回调中重新初始化该数组。

答案 1 :(得分:2)

不要将其设为全局,使其成为实例变量。如:

@interface MyViewController : UIViewController {
    NSMutableArray* parsedDataArray;  //declare the array here
}
@end

但除此之外,是的,在解析完成后调用reloadData是合理的。只需修改代码,即在调用reloadData时不重置解析结果。

答案 2 :(得分:1)

是的,将NSMutableArray作为控制器文件的全局

确保你在拥有表视图的控制器中获得NSMutableArray的值。

只需重新加载表。

此致 希亚姆