0

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

4

3 回答 3

3

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

于 2012-06-09T15:35:28.643 回答
1

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

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

于 2012-06-09T07:22:38.500 回答
0

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

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

注意:reload函数如果要清除secondController上的数据

于 2012-06-09T05:23:53.660 回答