当模型未完成加载时,表视图为空



这里的情况是,我有一个带有选项卡栏的应用程序,每个选项卡都有一个带有数据源和TTURLRequest模型的TTTableViewController

当我执行这一系列操作时,我得到了这个无数据表:

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

(2)然后切换到另一个选项卡

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

所以这里有一个快速修复我的问题,我知道这不是最好的方式。所以我所做的是设置一个私有布尔值,如果它需要使模型无效,当用户移动到另一个视图,而模型尚未加载,我设置标志_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;
    }
}

不再显示空表视图

最新更新