拉到刷新:屏幕消失

时间:2016-12-28 11:08:53

标签: ios objective-c pull-to-refresh

我为我的控制器实现了pull to refresh功能:

- viewDidLoad {
self.refresh = [[UIRefreshControl alloc] init];
[self.refresh addTarget:self action:@selector(refreshData) forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:self.refresh];
}

- (void) refreshData {
__weak myController *weakSelf = self;
[[NetworkcallManager instance] getCall:^(NSString *result){
    if(weakSelf != nil) {
                [weakSelf.refresh endRefreshing];
                [weakSelf.tableView reloadData];
            }
    }];
}

刷新按预期工作,但当我拉下屏幕太硬时,整个屏幕会消失片刻,然后数据会刷新。

有没有办法避免屏幕消失?我想知道是不是因为reloadData函数。如果它调用' viewWillAppear'然后我就能理解我面临的问题。 (我的viewWillAppear代码导致暂时空白的屏幕)。

编辑: 如果我在没有网络连接的情况下拉下来(关闭wifi),那么屏幕就不会消失。

1 个答案:

答案 0 :(得分:0)

我遇到了这个问题。在代码中我清除表然后更新它。结果,屏幕瞬间消失。