每次加载Navigator视图控制器时如何执行函数?

时间:2012-06-09 05:09:36

标签: iphone xcode uiviewcontroller uinavigationcontroller

我在我的应用上有第二个视图,其中显示了一个导航栏。我想在第二个视图打开时执行一个函数。但是当我打开第二个视图并返回到主视图并重新打开第二个视图时,它会显示最后一个更改并且没有新的更改。每次显示第二个视图时如何执行函数?

3 个答案:

答案 0 :(得分:3)

为什么不直接使用第二个视图控制器的-(void)viewWillAppear:(BOOL)animated(或didAppear)方法?

答案 1 :(得分:1)

您可以编写一个在第二个视图中加载数据的方法。 例如如果您将数据存储在数组中,则可以按以下方式执行:
- (void)loadDataInSecondView:(NSArray *)inputData     {           //写入逻辑以在第二个视图中加载数据     }

当您呈现第二个视图时,只需使用该方法调用此方法。

答案 2 :(得分:0)

您应该全局初始化mainView上的第二个控制器。

- (void)functionSecondView:(BOOL)isReload {
        // Do something on your second contoller(object values)
         if(isReload) {
            [secondContoller reload];
         }
         [self.navigationController pushViewController:secondContoller animated:YES];
 }

注意:如果要清除secondController

上的数据,请重新加载功能