-1

我使用第一个视图(一个类),其中有一个按钮显示第二个视图(另一个类)。显示如下:

listContactsViewController viewController * = [[listContactsViewController alloc] init];
UINavigationController * vc = [[UINavigationController alloc] initWithRootViewController: viewController];
[self presentModalViewController: vc animated: YES];

然后在第二个视图中,我选择行,然后我有一个“添加”按钮来显示第一个视图,如下所示:

[self dismissModalViewControllerAnimated: YES];

我的问题是在第二个视图中我有一个 NSMutableArray 我想发送到第一个视图。

如果你有一个想法。

谢谢你。

4

2 回答 2

0

有很多方法可以解决这个问题。

快速:在您的第二个视图控制器中

listContactsViewController

定义一个delegate属性,该属性包含对呈现控制器的引用(您希望使用创建的 NSArray 的那个listContactsViewController。然后,在关闭视图控制器之前,在delegate接口中调用一个方法,以便您的呈现控制器可以获取大批。

不过,这只是解决您的问题的一种快速解决方案,并不是最好的解决方案。

更正确的解决方案是创建一个“模型”对象,该对象可从应用程序中的任何控制器访问(单例可以),该对象包含相关数据:listContactsViewController将数组存储到模型中;呈现控制器从那里得到它。

于 2012-07-30T09:13:48.730 回答
0

使用代表和协议。

请参阅本教程:在视图之间传递数据教程 - 在您的 iPhone 应用程序中使用协议和委托。

于 2012-07-30T09:32:04.360 回答