2011-07-17 2 views
2

は、私は次のコード客観C:どのように「認識されていないセレクタがインスタンスに送信された」というエラーを解決するには

for (User *user in likersArray) 
{ 
    //Set variables for dictionary 
    NSString *nameLength = [NSString stringWithFormat:@"%i",[user.nickname length]]; 
} 

を使用して、インスタンスオブジェクトのプロパティにアクセスしようとしていますしかし、私は次のエラーを取得しておいてください。

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSCFString nickname]: unrecognized selector sent to instance 0x8c0f780' 

私のユーザークラスは、そのエラーがそのeverythinない意味

@interface User : NSObject <NSCoding> 
{ 
NSString *uid; 
NSString *name; 
NSString *nickname; 
} 

@property (nonatomic, copy) NSString *uid; 
@property (nonatomic, copy) NSString *name; 
@property (nonatomic, copy) NSString *nickname; 

@end 

答えて

13

以下のように定義されますあなたのlikersArrayのgはUserのオブジェクトです。少なくとも1つはNSStringです。

5

Userのオブジェクトの1つがlikersArrayに入っていて、あなたがゴミを打っているということもあります。

0

私は非常に類似した問題を抱えていましたが、これは1つのアイテムが作成され、アレイに挿入されたことが原因です。 likersArrayに1つのアイテムしか含まれていない場合は、このエラーも発生し、見つけにくいバグです。うまくいけば、これは誰かを助ける!

関連する問題