我有一个UITableView从HTML获取数据。抓取工作正常,我通常有大约20个单元格可以显示,从1,2,3,4,5到多达20个。UITableView显示不正确,但数据通过
但是,在抓取之后,单元格只显示第一个内容细胞在所有细胞上。 (即1,1,1,1,1,1)如果我向下滚动,我会看到6,7,8,...,20。如果我再次滚动回来,我会看到桌子变成正常...
我测试的代码,我发现在insertNewObject类,如果我插入0索引,那么一切都将是正常的。但是,不是如果我只是添加对象,也不插入对象在最后一个索引为我工作。
这里是我的insertNewObject类代码:
- (void)insertNewObject:(id)sender {
if (!_objects) {
_objects = [[NSMutableArray alloc] init];
}
// Working code, but I want the order from the top 1, 2, 3, ..., 20 rather than
// 20, 19, 18, ..., 2, 1
// [_objects insertObject:sender atIndex:0];
// And the code below doesn't show up correctly...
// [_objects insertObject:sender atIndex:(_objects.count)];
// [_objects addObject:sender];
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}
这是非常奇怪的,我认为这是事做图纸,因为UITableView中显示一切正常,如果我一直在向上和向下滚动和“干净”的显示...但是如果我做了setDisplay,什么也没有发生......刷新表格并不能解决问题...
任何想法? 谢谢
好吧...我已经做了一些非常愚蠢的...... 我做了一个数组,把他们在第一,和反循环和把它们放进UITable与[_objects insertObject:发件人atIndex: 0]; 这是一个解决方案,但我不认为这是正确的方法。有没有办法解决这个问题? – snowmen10 2012-08-16 03:39:49