2013-02-05 82 views
1

在我的應用程序中,我使用幾個UIImageViews動畫圖像。對於這些UIImageView我稱爲startAnimating並且無限期地擁有動畫循環。我的應用程序包含許多不同的視圖,很多時候這些UIImageViews不在屏幕上。另外我的應用程序在後臺運行。我的問題是,如果對於這些UIImageViews,我永遠不會調用stopAnimating,即使UIImageView處於屏幕外(即它們的超級視圖處於屏幕外/隱藏狀態或應用程序位於後臺),視圖是否仍會繼續生成動畫並消耗處理能力?UIImageView動畫運行時,不是屏幕

在此先感謝。

回答

1

說實話,我不知道,但我確實在蘋果文件

隱藏查看

要在視覺上隱藏視圖,您可以其隱藏屬性設置爲YES 或更改找到這個其alpha屬性爲0.0。隱藏的視圖不會從系統接收到觸摸事件 。然而,隱藏的視圖確實參與 自動調整和其他與視圖 層次結構關聯的佈局操作。因此,隱藏視圖通常是 從您的視圖層次結構中刪除視圖的一種方便替代方案,特別是如果您計劃在不久之後再次顯示視圖時。

我閱讀了文檔here,但找不到任何可以保證答案的答案。我記得通過在線斯坦福大學的課程,我觀察了一段時間後,隱藏的觀點根本沒有繪製,以保持處理能力。但是被跟蹤(如上所述)。話雖如此,我一般會認爲蘋果以有效的方式處理這個問題,但不知道肯定。

如果你想要一個更明確的答案,你可以動畫一堆視圖動畫,並用樂器跟蹤它們,看看它們消耗多少。