如何重新加载父UINavigationController?

Anh*_* Do 1 iphone cocoa-touch

我的RootViewController包含一个表视图和一个导航栏.点击一行后,另一个视图控制器被推送到堆栈,即SecondViewController.如果单击"后退"按钮,则会从堆栈中弹出SecondViewController,但父视图控制器的数据已过期.

我怎么能重新加载RootViewController的数据?我的第一次尝试是实施

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
Run Code Online (Sandbox Code Playgroud)

并再次调用viewdidLoad.

问题是,在第一次加载时,viewDidLoad将被调用两次.

los*_*sit 9

在viewWillAppear:方法而不是viewDidLoad中加载表中的数据.每次出现视图时都会调用viewWillAppear,而在创建视图时只调用一次viewDidLoad.

因此,在viewWillAppear中加载数据:将确保您的表在显示时具有最新数据.