在uitableview重新加载时显示活动指标

时间:2018-06-14 07:12:16

标签: ios uitableview swift4.1

我在tableView中查看了新闻,当我在设置中更改某些参数并返回带有新闻的视图时,我的tableView必须根据新设置重新加载新闻。 我有outlet activityIndi​​cator和这段代码:

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    // Start animating
    indicator.startAnimating()
    indicator.backgroundColor = UIColor.white

    // Load new depending on settings    
    getJsonFromUrl(editionsArray: GlobalSettings.sharedManager.editions.sorted())
    self.tableView.reloadData()

    indicator.stopAnimating()
    indicator.hidesWhenStopped = true
}

现在当tableView为空时我可以看到activityIndi​​cator,但是当我的tableView重新加载时,activityIndi​​cator没有显示在屏幕上。

2 个答案:

答案 0 :(得分:1)

表格视图或表格视图单元格颜色和活动指示器颜色后面的ActivityIndi​​ncatior将匹配(在这种情况下为白色)。

还可以在动画开始前设置ActivityIndi​​cator可见性为真。

希望你没有删除其活动指标。

答案 1 :(得分:0)

感谢您的帮助。我找到了答案。所有问题都在函数getJsonFromUrl中,因为我使用信号量来等待加载和解析json。当我将信号量更改为DispatchQueue.main.async后,一切都开始工作了!