2012-01-07 107 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:?