0

我面临一个关于 UIActivityIndi​​catorView 动画的奇怪问题。

我有一个 splitViewController,左侧有一个 UITableView,右侧有另一个。

当我进入应用程序时,我正在后台执行一些操作以加载数据,并且表的每个 UITableViewCell 都将包含一个 UIActivityIndi​​catorView。

必须在左侧执行的操作在队列中。在右侧执行的操作位于不同的队列中。

右侧操作相对于左侧必须执行的操作具有主要优先级。

当右侧队列启动时,UIActivityIndi​​catorView 被放置在表格的每个 UITableViewCell 中,并立即启动。

当左侧队列启动时,UIActivityIndi​​catorView 被放置在表格的每个 UITableViewCell 中,但不会立即启动动画。(我必须滚动表格才能强制动画)。

我该如何解决这种情况?如何在不滚动表的情况下为另一个表上的 UIActivityIndi​​catorView 设置动画?

4

1 回答 1

0

我不知道您使用哪种线程在后台运行操作,但如果影响界面(在您的情况下为 UIActivityIndi​​catorView),我对您的建议是使用以下代码运行 UI 并加载操作线程

dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){
    //Background Thread
    dispatch_async(dispatch_get_main_queue(), ^(void){
        //Run UI Updates
    });
});
于 2013-11-07T14:44:43.603 回答