在.h中定义时,将对象添加到NSMutableArray

时间:2010-11-26 22:17:39

标签: iphone objective-c nsmutablearray

我正在测试NSMutableArray并且不明白我做错了什么。

当我在本地定义“myArray”时,[myArray addObject:@“First line”];但是如果我在.h文件中定义它,它最终会为null。

我正在使用myArray在UITableView“didSelectRowAtIndexPath”中添加多个选定单元格的文本。

有人可以解释我做错了什么吗?

3 个答案:

答案 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"];
}