Three20 TTTableViewController重新加载数据

时间:2010-11-09 07:55:42

标签: objective-c three20

如何在TTTableViewController中重新加载数据?我试过了 调用reloadData但它不显示新数据。 我创建了数据源文件,它是的子类 TTListDataSource。基本上,init函数看起来像这样。

- (id) initWithObject:(NSArray *)objects { 
        if (self = [super init]) { 
                NSMutableArray *priceItems = [[[NSMutableArray alloc] init]  autorelease]; 
                for (int i = 0; i < [objects count]; i++) { 
                        [priceItems addObject: 
                         [PriceItem itemWithName: 
                                [[objects objectAtIndex:i] objectAtIndex:0] 
                                          lastDone:[[objects objectAtIndex:i] objectAtIndex:1] change:[[objects objectAtIndex:i] objectAtIndex:2]]];                                                                                           
                } 
                self.items = [NSArray arrayWithArray:priceItems]; 
        } 
        return self;  }

加载视图后,我开始流式传输一些数据,因此 传递给initWithObject的对象已更改,因此我在其中调用'reload' TTTableViewController的子类,以便更新数据,但是 数据未更新。它也不适用于刷新方法。我是否需要实施任何其他方法 TTListDataSource的子类?

2 个答案:

答案 0 :(得分:3)

尝试

[self invalidateModel];

这应该可以解决问题。

答案 1 :(得分:1)

invalidateModel 会重建模型,效率不高。

尝试 [TTTableViewController刷新] ,您的表格将重新加载。