如何使用 insertRowsAtIndexPaths 将数组内的字典添加到 UItableview?

Posted

技术标签:

【中文标题】如何使用 insertRowsAtIndexPaths 将数组内的字典添加到 UItableview?【英文标题】:How to add dictionary inside of an array to UItableview using insertRowsAtIndexPaths? 【发布时间】:2012-04-28 19:05:07 【问题描述】:

如何使用 insertRowsAtIndexPathsgetnewdata 的结果添加到我现有的 tableView 中?我找到了几个例子,但无法弄清楚。

- (void)getfirstdata 
     [...] //get JSON data
     self.data = jsonResult; //a dictionary inside of an array
     [self.tableView reloadData];


- (void)getnewdata 
     [...] //get new JSON data which has to be added to top of the table
     self.data = jsonnewResult; //a dictionary inside of an array
     [self.tableView reloadData];


(UITableViewCell *) tableView: (UITableView *) table_view cellForRowAtIndexPath: (NSIndexPath *) index_path
    static NSString *CellIdentifier = @"Cell";
    if (cell == nil) 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    
    id celldata = [self.data objectAtIndex:[index_path row]];
    cell.textLabel.text = [celldata valueForKeyPath:@"user.name"];
    cell.detailTextLabel.text = [celldata objectForKey:@"text"];

return cell;

【问题讨论】:

您必须是 ruby​​ 开发人员:-)。 Objective-c 约定是 camelCase。 【参考方案1】:

为了获得新的,你想添加到你的数据中,所以......

- (void)getnewdata 
     [...] //get new JSON data which has to be added to top of the table
     [self.data addObjectsFromArray:jsonResult];
     [self.tableView reloadData];

确保 self.data 是一个 NSMutableArray。

编辑

我突然想到,您可能希望新数据放在首位......

NSMutableArray *newModel = [NSMutableArray arrayWithArray:jsonResult];
[newModel addObjectsFromArray:self.data];
self.data = newModel;

【讨论】:

感谢这个工作正常,不幸的是没有 insertRowsAtIndexLevel

以上是关于如何使用 insertRowsAtIndexPaths 将数组内的字典添加到 UItableview?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用本机反应创建登录以及如何验证会话

如何在自动布局中使用约束标识符以及如何使用标识符更改约束? [迅速]

如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?

如何使用laravel保存所有行数据每个行名或相等

如何使用 Math.Net 连接矩阵。如何使用 Math.Net 调用特定的行或列?

WSARecv 如何使用 lpOverlapped?如何手动发出事件信号?