我正在尝试将ViewController中的数组复制到Data存储类。我找到的阵列复制方法都没有实际工作。目前我有..
//XML parser is returning an array of parsed objects
NSMutableArray *randomtesting = [parser listArray];
customerList.list =[[NSMutableArray alloc] initWithArray:randomtesting copyItems:YES];
NSLog(@"First node randomtesting: %@",[randomtesting objectAtIndex:0]);
NSLog(@"First node customerList: %@",[customerList.list objectAtIndex:0]);
第一个NSLog正确打印出值。第二个打印出Null。我也试过
customerList.list =randomtesting;
和
customerList.list = [paser listArray];
此类的Viewcontroller的.h如下
#import <UIKit/UIKit.h>
@class CustomerListData;
@interface ViewController : UIViewController <UIAlertViewDelegate, UITextFieldDelegate>{
CustomerListData *customerList;
}
@property (nonatomic, retain) CustomerListData *customerList;
数组变量的类.h是
#import <Foundation/Foundation.h>
@interface CustomerListData : NSObject{
NSMutableArray *list;
}
@property (nonatomic, retain) NSMutableArray *list;
@end
.m只是
@synthesize list;
我相信我的所有变量声明都是正确的,我只是没有正确复制它。但我没有一种方法可行。
感谢。
答案 0 :(得分:2)
您是否在任何地方初始化ViewController的customerList
属性,即执行以下操作:
self.customerList = [[[CustomerListData alloc] init] autorelease];
如果没有,则此属性将为nil
,并且您访问customerList.list子属性的所有尝试都将无提示失败,因为您向nil
发送了Objective-C消息。