NSObject和NSMutableArray问题

问题描述

| 您好,我有这个NS对象:
@interface Checkin : NSObject {

    Nsstring *name;
    Nsstring *profID;
    Nsstring *time;
    Nsstring *lon;
    Nsstring *lat;
    Nsstring *country;
    Nsstring *city;
    Nsstring *place;
    Nsstring *photoURL;
    NSMutableArray *taggedID;
    NSMutableArray *taggedname;
}

@property(nonatomic,retain)Nsstring *name;
@property(nonatomic,retain)Nsstring *profID;
@property(nonatomic,retain)Nsstring *time;
@property(nonatomic,retain)Nsstring *lon;
@property(nonatomic,retain)Nsstring *lat;
@property(nonatomic,retain)Nsstring *country;
@property(nonatomic,retain)Nsstring *city;
@property(nonatomic,retain)Nsstring *place;
@property(nonatomic,retain)Nsstring *photoURL;
@property(nonatomic,retain)NSMutableArray *taggedID;
@property(nonatomic,retain)NSMutableArray *taggedname;

@end
现在,我想创建一个NSMutable数组,并在其中添加几个\“ Checkins \”。 当我这样做时:
 Checkin *checkinsA = [[NSObject alloc] init]; 

 NSDictionary *decodedJson = result;   
 NSArray *users = [decodedJson objectForKey:@\"data\"];

for(NSDictionary *user in users) {
    NSLog(@\"Created item: %@ \\n\",[user objectForKey:@\"created_time\"]);
     checkinsA.time = [Nsstring stringWithFormat:@\"%@\",[user objectForKey:@\"created_time\"]];
    NSDictionary *fromData = [user objectForKey:@\"from\"];
     NSLog(@\"user id is: %@ \\n\",[fromData objectForKey:@\"id\"]);
      checkinsA.profID = [fromData objectForKey:@\"id\"];

     NSLog(@\"user name is: %@\\n \",[fromData objectForKey:@\"name\"]);
      checkinsA.name =[fromData objectForKey:@\"name\"];

    NSDictionary *placeData = [user objectForKey:@\"place\"];
    NSDictionary *locationData = [placeData objectForKey:@\"location\"];
     NSLog(@\"City: %@ \\n\",[locationData objectForKey:@\"city\"]);
      checkinsA.city = [locationData objectForKey:@\"city\"];

     NSLog(@\"Country: %@ \\n\",[locationData objectForKey:@\"country\"]);
      checkinsA.country = [locationData objectForKey:@\"country\"];

     NSLog(@\"Latitude: %@ \\n\",[locationData objectForKey:@\"latitude\"]);
     checkinsA.lat = [locationData objectForKey:@\"latitude\"];

     NSLog(@\"Longitude: %@ \\n\",[locationData objectForKey:@\"longitude\"]);
     checkinsA.lon = [locationData objectForKey:@\"longitude\"];

     NSLog(@\"Place name: %@ \\n\",[placeData objectForKey:@\"name\"]);
     checkinsA.place = [placeData objectForKey:@\"name\"];

    NSDictionary *tagData = [user objectForKey:@\"tags\"];
    NSArray *tagDataArray = [tagData objectForKey:@\"data\"];
    for(NSDictionary *tagData2 in tagDataArray){
      NSLog(@\"tagged user id is: %@ \\n\",[tagData2 objectForKey:@\"id\"]);
        [checkinsA.taggedID addobject:[tagData2 objectForKey:@\"id\"]];
      NSLog(@\"tagged user name is: %@\\n \",[tagData2 objectForKey:@\"name\"]);
         [checkinsA.taggedname addobject:[tagData2 objectForKey:@\"name\"]];
    }

    [checkinArray addobject:checkinsA];
}
我收到错误消息:   -[NSObject setTime:]:无法识别的选择器已发送到的实例   checkinsA.time = [Nsstring stringWithFormat:@ \“%@ \”,[user objectForKey:@ \“ created_time \”]]]; 更改checkinsA.time checkins.id等值的正确方法是什么?     

解决方法

        之所以会出现此错误,是因为
checkinsA
不是
Checkin
对象,而是一个ѭ4si(因为这是您分配的对象),而
NSObject
没有
setTime
方法。尝试以下方法:
Checkin *checkinsA = [[Checkin alloc] init]; 
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...