我正在从 tableview1.row 导航到 tableview2,它有很多行被获取。鉴于加载时间约为 3 秒,我希望导航在选择 tableview1.row 后立即滑入 tableview2,然后在 tableview2 上方显示 UIActivityIndicatorView,同时获取数据并在其基础表视图中呈现。注意,tableview2 实际上是父 UIView 的子视图(而不是父 UITableView)。
我看过这篇文章:Activity indicator should be display when navigating from UITableView1 to UITableView2
...它给出了将数据获取周围的活动指示器 start 和 stopAnimating 调用添加到 tableview2 的 viewDidLoad 的指令。
问题是,我不确定上述解决方案如何工作,因为 viewDidLoad 在 tableview2 明显滑入视图之前运行和完成。
另外,我还尝试在 IB 中的 tableview2 上添加一个活动指示器,并将 IBOutlet 指示器的开始/停止动画代码添加到 viewDidAppear 中。发生的情况是数据提取运行,我可以看到指示器在旋转,但在提取结束时,表视图为空。似乎 viewDidAppear 为时已晚,无法将数据添加到表视图中,因为 cellForRowAtIndexPath 等已经触发。
任何人都可以提出任何建议吗?我很可能在这里遗漏了一些明显的东西(我现在快凌晨 5 点了,我觉得我的大脑很糊状)。我应该从 viewDidAppear 重新触发 cellForRowAtIndexPath 等吗?我的表视图是子视图而不是父视图的问题吗?
谢谢