Ios Objective-C类对象未映射到数组

Ios Objective-C类对象未映射到数组,ios,objective-c,nsarray,amazon-dynamodb,object-object-mapping,Ios,Objective C,Nsarray,Amazon Dynamodb,Object Object Mapping,我怎样才能把这个事件传递给toDoArray?我不确定我错过了什么。谢谢你的帮助 SDEventModel.h @interface SDEventModel : AWSDynamoDBObjectModel <AWSDynamoDBModeling> @property (nonatomic, strong) NSArray *toDoArray; ViewController.m if (task.result) { AWSDynamoDBPaginated

我怎样才能把这个事件传递给toDoArray?我不确定我错过了什么。谢谢你的帮助

SDEventModel.h

@interface SDEventModel : AWSDynamoDBObjectModel <AWSDynamoDBModeling>
@property (nonatomic, strong) NSArray *toDoArray;
ViewController.m

    if (task.result) {
     AWSDynamoDBPaginatedOutput *paginatedOutput = task.result;
     for (SDEventModel *event in paginatedOutput.items) {
         //Do something with event.
         NSLog(@"Task results: %@", event);

         [self.toDoArray arrayByAddingObject:event];
         NSLog(@"To do array results: %@", self.toDoArray);

         [self.tableview reloadData];
     }
 }
这是NSLog的输出。

Task results: <SDEventModel: 0x7faa88d81430> {
city = "New York";
image = "photo-22.jpg";
title = "Hang with friends";
}
To do array results: (null)
任务结果:{
城市=“纽约”;
image=“photo-22.jpg”;
title=“和朋友一起玩”;
}
要执行数组结果:(null)
该方法返回另一个包含添加对象的数组,但不附加相同的数组

以下是该方法的使用方法:

self.toDoArray = [self.toDoArray arrayByAddingObject:event];
但是,在您的情况下,数组似乎甚至没有初始化。所以你也需要做类似的事情:

-(void) viewDidLoad {
    [super viewDidLoad];
    self.toDoArray = @[];
}
该方法返回另一个包含已添加对象的数组,但不附加相同的数组

以下是该方法的使用方法:

self.toDoArray = [self.toDoArray arrayByAddingObject:event];
但是,在您的情况下,数组似乎甚至没有初始化。所以你也需要做类似的事情:

-(void) viewDidLoad {
    [super viewDidLoad];
    self.toDoArray = @[];
}

ViewController.h

@property (nonatomic, strong) NSMutableArray *toDoArray;
现在在
ViewController.m
中初始化该数组并将事件对象添加到其中

if (task.result) {
     self.toDoArray = [NSMutableArray new];
     AWSDynamoDBPaginatedOutput *paginatedOutput = task.result;
     for (SDEventModel *event in paginatedOutput.items) {
         //Do something with event.
         NSLog(@"Task results: %@", event);
         [self.toDoArray addObject:event];
     }
         NSLog(@"To do array results: %@", self.toDoArray);
         [self.tableview reloadData];
}

ViewController.h

@property (nonatomic, strong) NSMutableArray *toDoArray;
现在在
ViewController.m
中初始化该数组并将事件对象添加到其中

if (task.result) {
     self.toDoArray = [NSMutableArray new];
     AWSDynamoDBPaginatedOutput *paginatedOutput = task.result;
     for (SDEventModel *event in paginatedOutput.items) {
         //Do something with event.
         NSLog(@"Task results: %@", event);
         [self.toDoArray addObject:event];
     }
         NSLog(@"To do array results: %@", self.toDoArray);
         [self.tableview reloadData];
}

请检查添加对象的数组是否可变?
如果它是不可变的,您可以使用mutableCopy创建新数组或将现有数组转换为可变数组。请检查添加对象的数组是否可变?
如果它是不可变的,您可以创建一个新数组或使用mutableCopy将现有数组转换为可变数组

我相信您没有正确初始化_toDoArray。您刚刚开始向itI添加项目,我认为您没有正确初始化_toDoArray。您刚刚开始向它添加项目谢谢我现在看到数组已填充。谢谢我现在看到数组已填充。