我正在測試NSMutableArray,並且不明白我做錯了什麼。在.h中定義時將對象添加到NSMutableArray
當我在本地定義「myArray」[myArray addObject:@「First line」];工作,但如果我在.h文件中定義它,它結束爲空。
我正在使用myArray在UITableView「didSelectRowAtIndexPath」中添加多個選定單元格的文本。
難道有人很好解釋我做錯了什麼?
我正在測試NSMutableArray,並且不明白我做錯了什麼。在.h中定義時將對象添加到NSMutableArray
當我在本地定義「myArray」[myArray addObject:@「First line」];工作,但如果我在.h文件中定義它,它結束爲空。
我正在使用myArray在UITableView「didSelectRowAtIndexPath」中添加多個選定單元格的文本。
難道有人很好解釋我做錯了什麼?
你只是在頭文件中聲明一個NSMutableArray?如果是這樣,它仍然需要在.m文件中的某處進行初始化。你可以這樣做,像這樣:
array = [[NSMutableArray alloc] init];
[array addObject:@"First line"];
謝謝,就是這樣。順便說一句,我想我應該釋放它,當我離開UITableView xib? – PeterK 2010-11-26 22:37:43
請確保您有像這樣在您的.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
感謝gef,這正是我做到的:-) – PeterK 2010-11-26 23:24:55
在.H文件
NSMutableArray *myArray;
在.m文件
-(void)viewDidLoad
{
[super viewDidLoad];
myArray = [[NSMutableArray] alloc] init];
[myArray addObject:@"myObject"];
}
的問題是在你的代碼 - 你需要在聲明和初始化snippits粘貼別人來幫助你。 – 2010-11-26 22:23:36