将对象从AppDelegate.m传递到View Controller

时间:2010-06-24 09:09:46

标签: iphone objective-c cocoa model-view-controller

嗨,我有一个iphone应用程序,我正在提取&解析applicationDidFinishLaunching中的数据。现在我想将一个NSMutableArray中的这个获取数据传输到我的第一个视图控制器,以便在那里显示它。

这是最好的方式......

2 个答案:

答案 0 :(得分:1)

你可以像initWithDataArray一样通过init传递它:我认为这已经足够了。

另一个解决方案,更糟糕的是,将AppDelegate解析为ViewController然后你可以调用:appDelegate.dataArray但它会泄漏太多信息

答案 1 :(得分:0)

在这种情况下,我更喜欢应用代表。

//在AppDelegate.h中声明NSMutableArray对象,现在属性&合成它

//将数据存储在NSMutableArray对象

//创建任何View Controller类的ApplicationDelegate对象

yourApplicationAppDelegate * appDelegate;

appDelegate =(yourApplicationAppDelegate *)[[UIApplication sharedApplication] delegate];

现在,您可以通过appDelegate在应用程序的任何位置访问NSMutableArray对象