模型未完成加载时的Three20空表视图

时间:2011-09-13 09:24:10

标签: iphone objective-c three20

这里的情况是,我有一个带标签栏的应用程序,每个标签都有一个带有Datasource和TTURLRequest模型的TTTableViewController

当我执行这一系列操作时,我得到的没有数据表:

(1)当我的第一个视图正在加载时,项目尚未显示(Three20正在加载...)

(2)然后我切换到另一个标签

(3)然后回到第一个视图,我得到一张空桌子。但当 我试图断点并查看可见单元格,模型,数据源,它们有值,但是它如何显示一个空表。

1 个答案:

答案 0 :(得分:0)

所以这里是我的问题的快速修复,我知道这不是最好的方法。所以我做的是设置一个私有布尔值,如果它需要使模型无效,当用户移动到另一个视图,而模型是尚未加载,我设置标志_isNeedtToInvalidateModel = YES

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    if(_isNeedToInvalidateModel) {
        [self invalidateModel];
        _isNeedToInvalidateModel = NO;
    }

}

- (void)viewWillDisappear:(BOOL)animated 
{
    [super viewWillDisappear:animated];
    if(![self.model isLoaded]) {
        _isNeedToInvalidateModel = YES;
    }
}

不知何故,它不再显示空表视图