在popViewControllerAnimated之后刷新ViewController

时间:2011-01-26 18:20:36

标签: iphone ios4

我有一个根ViewController(RootViewController),它调用pushViewController来显示另一个ViewController(DetailViewController)。在DetailViewController中,我进行了编辑,这些编辑会影响根ViewController中显示的内容。所以我需要在通过popViewControllerAnimated删除DetailViewController后重绘RootViewController中的视图。

问题是setNeedsDisplay在这种情况下似乎不起作用。在RootViewController的viewWillAppear方法中,我调用:

[self.view setNeedsDisplay]

但是,RootViewController视图的内容不会更新。所以我想知道导航控制器是否存在阻止setNeedsDisplay工作的问题。

我能找到的唯一解决方法是以下代码强制调用viewDidLoad,重绘整个视图

self.view = nil;

1 个答案:

答案 0 :(得分:2)

您可以在 viewWillAppear 而不是viewDidLoad中更新您的视图。您无需调用setNeedsDisplay。