也许是一个非常基本的问题,但我不明白......
我已经编写了自己的类,以便在我的 iPhone 应用程序中将数据作为对象。该类是 NSObject 类型。该类有几个 NSString 属性以及其他类的三个对象。
@interface vcardItem : NSObject {
vCardNitem *PersonName;
NSString *Phone;
NSString *PhotoURL;
vCardTELitem *PhoneData;
NSString *URL;
NSString *eMail;
vCardADRItem *Address;
NSString *Company;
NSString *Role;
int initialised;
}
@property (nonatomic, retain) vCardNitem *PersonName;
@property (nonatomic, retain) NSString *Phone;
@property (nonatomic, retain) NSString *PhotoURL;
@property (nonatomic, retain) vCardTELitem *PhoneData;
@property (nonatomic, retain) NSString *URL;
@property (nonatomic, retain) NSString *eMail;
@property (nonatomic, retain) vCardADRItem *Address;
@property (nonatomic, retain) NSString *Company;
@property (nonatomic, retain) NSString *Role;
@property int initialised;
-(id)initEmpty;
-(id)initWithPayload:(NSString *)payload;
-(void)sendToAddressBook;
-(void)debugVCard;
-(NSString *)getFirstName;
@end
我在视图控制器的函数调用中创建了一个 vcardItem 对象。数据已填充并可访问。调用函数 initWithPayload 并设置所有属性。
然后我打开另一个视图来显示详细信息并使用我的 vcardItem 对象调用函数 setVCard(仍然可以完全访问):
VCardViewController *aVCardViewController = [[VCardViewController alloc] init];
[self presentModalViewController:aVCardViewController animated:YES];
[aVCardViewController setVCard:aVCard];
那么在 VCardViewController 中,只有 NSString 属性是可访问的。一旦我尝试访问 VCardNItem、vCardADRitem 或 vCardTELitem 的属性,我就会收到 EXC_BAD_ACCESS 错误。
看起来 vcardItem 对象中的对象不可用!?
我已经设置了 NSZombie... 东西,我的 vcardItem 对象仍然存在(没有“Zombie”),但我无法访问数据。
任何的想法?我有点卡在这里......