2010-04-20 65 views
0

如何訪問不同NSViewControllers中的NSDictionary。 NSDictionary已在我的委託文件中初始化。我是否必須將我的委託文件導入到每個視圖控制器文件,或者在我的委託之上完成所有視圖瞭解我的NSDictionary?我可能需要在每個文件中聲明我的字典嗎? - 感謝 蓋伊在整個iphone項目中使用NSDictionary

回答

0

NSDictionary應暴露作爲任何類創建它的屬性。您必須爲每個需要使用它的類導入頭文件(以便他們可以訪問該屬性)。

在App Delegate中放置這些東西通常是不好的做法(子類不應該依賴應用程序委託) - 聽起來它更適合模型類(更多有關MVC模式的信息,您可以看到Apple's documentation)。

0

如果您的應用程序委託中包含NSDictionary,則可以將其聲明爲委託中的屬性。然後,在需要的字典對象的任何文件,你可以如下訪問:

AppDelegate *mydelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; 

NSDictionary *dict = mydelegate.dictionary; 

這是假設您的代理文件名是AppDelegate中和你的NSDictionary對象引用的名字是字典。 您需要在您的文件中導入AppDelegate,以便使用演員表。