And*_*rdi 6 objective-c nsmutablearray
这是我的数据结构:
group [1...n] {
id,
name,
elements : [1...n]
}
Run Code Online (Sandbox Code Playgroud)
我为具有所有属性的元素定义了一个类,为group定义了一个类:
@interface Group : NSObject {
NSInteger groupID;
NSString *groupName;
NSMutableArray *elements;
}
@property (assign, readwrite) NSInteger groupID;
@property (assign, readwrite) NSString *groupName;
@property (assign, readwrite) NSMutableArray *elements;
Run Code Online (Sandbox Code Playgroud)
和单个元素:
@interface Element : NSObject {
NSInteger elementID;
NSString *elementName;
}
@property (assign, readwrite) NSInteger elementID;
@property (assign, readwrite) NSString *elementName;
Run Code Online (Sandbox Code Playgroud)
这两个类都有属性和综合.当应用程序启动时,我在数据结构上插入数据:
arrGroup = [NSMutableArray array];
[arrGroup retain];
Element *element1 = [[Element alloc] init];
element1.elemenID = 1;
element1.elemenName = @"Andrea";
Element *element = [[Element alloc] init];
element2.elementID = 2;
element2.elementName = @"Andrea2";
Group *group = [[Group alloc] init];
group.groupID = 1;
group.groupName = @"Grup 1";
[group.elements addObject:element1];
[group.elements addObject:element2];
[contact1 release];
[contact2 release];
[arrGroup addObject:group];
Run Code Online (Sandbox Code Playgroud)
问题是[group.elements addObjct:element1].在NSMutableArray元素上没有写任何内容.
你能帮我找到错误吗?有一种更好的方法来检索结构数据(elemens组)?
感谢帮助!安德里亚
Geo*_*che 15
@synthesize 只为您的属性生成getter和setter,如果需要,您必须自己处理初始化.
要初始化可变数组,请在初始化程序中执行此操作:
- (id)init { // or however it is named
if ((self = [super init])) {
elements = [[NSMutableArray alloc] init];
// ... more?
}
return self;
}
- (void)dealloc {
[elements release]; // don't forget to clean up
// ... more?
[super dealloc];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12693 次 |
| 最近记录: |