2010-11-26 54 views
2

我正在測試NSMutableArray,並且不明白我做錯了什麼。在.h中定義時將對象添加到NSMutableArray

當我在本地定義「myArray」[myArray addObject:@「First line」];工作,但如果我在.h文件中定義它,它結束爲空。

我正在使用myArray在UITableView「didSelectRowAtIndexPath」中添加多個選定單元格的文本。

難道有人很好解釋我做錯了什麼?

+1

的問題是在你的代碼 - 你需要在聲明和初始化snippits粘貼別人來幫助你。 – 2010-11-26 22:23:36

回答

1

你只是在頭文件中聲明一個NSMutableArray?如果是這樣,它仍然需要在.m文件中的某處進行初始化。你可以這樣做,像這樣:

array = [[NSMutableArray alloc] init]; 
[array addObject:@"First line"]; 
+0

謝謝,就是這樣。順便說一句,我想我應該釋放它,當我離開UITableView xib? – PeterK 2010-11-26 22:37:43

2

請確保您有像這樣在您的.h文件中:

@interface YourViewController : UIViewController { 

    NSMutableArray *myArray; 
} 

@property(nonatomic, retain) NSMutableArray *myArray; 

@end 

而在你的.m文件

@implementation YourViewController 


@synthesize myArray 

//make sure you release it 
- (void)dealloc { 
    [myArray release]; 
} 

/*....other code..... */ 

/*make sure it's initialised somewhere */ 
- (void)viewDidLoad { 
    [super viewDidLoad]; 
    myArray = [[NSMutableArray] alloc] init]; 
} 
@end 
+1

感謝gef,這正是我做到的:-) – PeterK 2010-11-26 23:24:55

0

在.H文件

NSMutableArray *myArray;

在.m文件

-(void)viewDidLoad
{
[super viewDidLoad];
myArray = [[NSMutableArray] alloc] init];
[myArray addObject:@"myObject"];
}

相關問題