1
我有一個數組arryImages,我只想聲明一次,並從一些視圖控制器訪問它,但我不知道在哪裏放置它。iphone dev創建一個數組訪問從一些視圖控制器
我有一個單獨的類(Variables.m),其包含以下代碼
@implementation Variables
//images array
arryImages = [NSArray arrayWithObjects:
[UIImage imageNamed: @"ico-company.png"],
[UIImage imageNamed: @"ico-value.png"],
[UIImage imageNamed: @"ico-date.png"],
[UIImage imageNamed: @"ico-notes.png"], nil];
@end
以我的ViewController類(我要訪問的數組)我已經加入:
#import "Variables.h"
我試着玩@synthesize,但是我不能訪問數組arrayImages。
(使用調用imageView2.image = [arryImages objectAtIndex:[indexPath row]];)ps。當它剛好在代碼之上時,這個工作是完美的,但不是在一個單獨的類中。
我錯過了什麼?
Regards
我仍然試圖弄清楚你的意思。我希望這可以從衆多的視圖控制器中工作。 你是說第一個標題應該在appdelegate和第二個ViewDidLoad位?在我應該創建它?我只有applicationDidFinishStarting 然後第三個代碼進入視圖控制器我想訪問arryImages? 例如,讓我們說的視圖控制器我想要訪問arryImages是: DetailViewController.m 和 EditViewController.m 和我只想要一次聲明數組。 什麼代碼去哪裏? Regards – oberbaum 2010-01-18 15:10:45
你在你的AppDelegate Header中聲明你的NSArray,init並將其填充到你的AppDelegate實現中,並通過使用上面發佈的代碼來訪問它:「NSArray * arryImages = [(MyAppDelegate *)[[UIApplication sharedApplication] delegate] arryImages ];」 – 2010-01-18 15:26:22
並且是:它不是viewdidload,而是applicationDidFinish在您的應用程序委託中啓動。 – 2010-01-18 15:29:05