2010-08-13 153 views
0

嗨,我是iphone新手。我正在做的是聲明一個名爲標籤的NSMutable數組,並且在viewdidload.But中聲明,當我在buttonclick函數中訪問標籤時,它顯示爲null。以前我在.h文件中解析propery,並在init函數中初始化。請幫助我在哪裏聲明以及如何聲明一個可變數組,這個數組可以在類中的任何位置以及如何向它添加對象,對於這些值是動態可變的。 thanku如何全局聲明一個數組

+0

嘗試讀取文檔:http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/Reference/Reference.html# // apple_ref/doc/uid/20000138-DontLinkElementID_1 – jamapag 2010-08-13 13:06:14

回答

0

如果你想在你的課堂的任何地方都可以訪問這個數組,你應該在你的@interface中聲明它。你的代碼應該是這個樣子:

@interface MyViewController : UIViewController { 
    NSMutableArray *labels; 
} 
@end 


@implementation MyViewController 

- (void)viewDidLoad { 
    labels = [[NSMutableArray alloc] init]; 
    [labels addObject:@"Label"]; 
    // etc. 
} 

- (void)dealloc { 
    // Don't forget to do this or your array will leak 
    [labels release]; 
    [super dealloc]; 
} 

- (void)buttonClickHandler { 
    // Do stuff with labels 
} 

@end 
0

你可以聲明它們,就像你會在C.當我需要他們,我有一個包含類似

IFDEF GLOBAL

詮釋XYZ一個包含文件variables.h; Struct abc * ptr;

else

External int xyz; 外部struct abc * ptr;

ENDIF

在一個.m文件,做全球

請原諒錯別字,iPad正在糾正我的#define。

+0

我不認爲他正在嘗試創建一個全局變量,但是可以從該類中的任何位置訪問它。在任何情況下,對於Objective-C上下文中的全局變量,單數類將比聲明全局變量更合適。 – 2010-08-13 05:47:15