2012-01-07 97 views
0

这是一个相当多的人问过的问题,尤其是StackOverflow。从另一个类重新加载UITableView?

重新加载表视图上的数据很容易,[self.myTableView reloadData];,myTableView是我的UITableView的实例,因为我使用UIViewController而不是UITableViewController。

我想更新数据(从Internet)后,从另一个视图控制器重新加载表视图。数据包含在属性列表中。我曾尝试使用协议,通知和其他一些东西,如将它放在viewDidAppear:中。没有为我工作。

这是我没有想过的事情,或者我刚刚做了一些错误的方法吗?非常感谢帮助!

+0

好吧,自己解决,最后! – Jacob 2012-01-07 03:24:45

+0

这是什么解决了这个问题? – 2012-01-07 11:37:04

+0

我拥有属性列表中的数据。我只是使用代码将数据初始化到表视图中,以便在需要时再次加载它。它变成了“重新加载”。 – Jacob 2012-01-08 17:14:21

回答

0

如果你想,或者是任何其他为此事访问一个UITableView对象,从另一个类,你可以使用属性使其访问:

ClassA.h

@interface ClassA { 
    UITableView *tableView; 
} 
@property (nonatomic, readonly) UITableView *tableView; 
@end 

ClassB.m

- (void)reloadTableInOtherClass { 
    [classAVariable.tableView reloadData]; 
} 
0
使用

观察者模式+通知是一个好方法。并让你的视图控制器决定何时重新加载数据也是一个很好的做法。 为什么通知不起作用。你使用addOvserver:?