我正在使用一個相當複雜的故事板的iPad應用程序。我的工作流程如下收集視圖推送另一個視圖,該視圖以模態方式呈現另一個視圖。iPad,iOS6 viewWIllAppear和視圖之間很長的延遲出現在屏幕上
以模態方式呈現的第三個視圖相當複雜,有19個子視圖,其中一些是圖像視圖。該應用程序做了很多工作來組織viewDidLoad中的視圖層次結構。 viewWillAppear或viewDidAppear中沒有其他內容。
令我困惑的是,如果我把日誌語句放在viewDidLoad中,我發現viewDidLoad在用戶啓動storyboard segue的1.5秒內完成。然後viewWillAppear被調用。 之後,屏幕坐在那裏3至80(是的,八十!)秒。有時候,視圖看起來比較快,有時需要很長時間。
這是我的viewDidLoad佔用太多內存的症狀嗎?換句話說,是因爲iOS清理了足夠的內存使我的視圖出現了嗎?
打在Xcode停止按鈕後,我重新啓動應用程序,執行的步驟,以目前的視圖控制器的序列中,這是第一個跑:
/
/80 seconds!
2013-03-27 22:56:30.311 iconmaker[2076:907] -[GLFirstViewController viewWillAppear:] [Line 597] viewWillAppear
2013-03-27 22:57:50.351 iconmaker[2076:907] -[GLFirstViewController viewDidAppear:] [Line 604] viewDidAppear
//after popping the view controller and repeating:
//less than 2 seconds
2013-03-27 22:59:23.698 iconmaker[2076:907] -[GLFirstViewController viewWillAppear:] [Line 597] viewWillAppear
2013-03-27 22:59:24.306 iconmaker[2076:907] -[GLFirstViewController viewDidAppear:] [Line 604] viewDidAppear
更新:在開啓後設備關閉,然後再次啓動,視圖控制器顯示速度非常快,在第一次運行時再次少於2秒。這是推送/彈出控制器4次後的分配分析。
這是一個內存釋放問題?