如题,直接上代码麻烦大家帮我看看是不是框架的问题:

//KHUser是我子类化的AVUser
KHUser *currentUser=[KHUser currentUser];
NSLog(@"currentUser:%@",currentUser.nickName);

程序崩溃了!:信息:

-[AVUser nickName]: unrecognized selector sent to instance 0x7f95b9c14650

*** Terminating app due to uncaught exception 'NSInvalidArgumentException


但是这样就没问题了!:

 KHUser *currentUser=[KHUser currentUser];
 NSLog(@"currentUser:%@",[currentUser objectForKey:@"nickName"]);

这是为什么啊 ,OC底层我不懂。。另外的其他情况下直接用 user.nickName 都是没有问题的啊!!

补充下,当让我是这么定义的:
@property(retain,nonatomic) NSString* nickName;

点m里面也有:@dynamic nickName;

[KHUser currentUser] 实际上还是 AVUser 类型的,你需要使用KHUser login

原来是这样啊 !多谢大哥,我的登录还是调用的 AVUser的。。汗。。问题解决了!

你好,如果在之前的已發布的版本使用了 AVUser
但在之後更新的版本中改了代碼用上 AVUser 的subclass
有方法令user 在不重新登入下access到subclass 的property 嗎