2015-10-04 41 views
1

我有一些代碼觸發活動指標:活動指示燈並不總是呈現

activityIndicator.startAnimating() 

一旦觸發我不斷地推出一些後臺任務(例如去到服務器,完成後獲取數據,回調)。

我遇到的問題是活動指示器的行爲不一致,從UI上顯示它有時可見/獲得渲染和動畫,有時不會(特別是如果應用程序在後臺並返回到前景)

我不知道我需要做什麼才能確保它在我繼續啓動後臺任務之前調用startAnimating()時始終呈現在屏幕上。

任何指導將不勝感激。

謝謝。

回答

1

我認爲這是因爲你可能在主線程之外使用UI。嘗試包裝代碼

dispatch_async(dispatch_get_main_queue(), ^{ 
    // Your code to run on the main queue/thread 
    self.activityIndicator.startAnimating() 
}); 
+0

問題解決了!我沒有意識到,即使我期待'按順序執行',我不得不'dispatch_async'。 – goggelj