2016-12-28 146 views
1

我實現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),則屏幕不會消失。

+0

你得到任何自動版式錯誤? – iphonic

+0

不,我不知道。一切正常,只需一會兒就可以看到空白屏幕。 –

+0

嘗試重新加載您的tableView在主線程 - 'dispatch_async(dispatch_get_main_queue()^ { [weakSelf.refresh endRefreshing]; [weakSelf.tableView reloadData]; });' – Rajat

回答

0

我得到了這個問題。在代碼中,我正在清除表並更新它。結果,屏幕瞬間消失。