我正在测试NSMutableArray并且不明白我做错了什么。
当我在本地定义“myArray”时,[myArray addObject:@“First line”];但是如果我在.h文件中定义它,它最终会为null。
我正在使用myArray在UITableView“didSelectRowAtIndexPath”中添加多个选定单元格的文本。
有人可以解释我做错了什么吗?
答案 0 :(得分: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 :(得分:1)
你刚才在头文件中声明了一个NSMutableArray吗?如果是这样,它仍然需要在.m文件中的某处初始化。你可以这样做:
array = [[NSMutableArray alloc] init];
[array addObject:@"First line"];
答案 2 :(得分:0)
在.h文件中
NSMutableArray *myArray;
在.m文件中
-(void)viewDidLoad
{
[super viewDidLoad];
myArray = [[NSMutableArray] alloc] init];
[myArray addObject:@"myObject"];
}