0
我是iOS新手,我有標籤欄。我有4個標籤,如Facebook。建議 - 底部導航處理
在我的情況下,當用戶轉到其中一個屏幕時,應該隨時從服務器更新所有數據。
有人說打電話viewDidLoad
經常會造成內存泄漏。真的嗎?
那麼這裏最好的戲是什麼?每次撥打viewDidLoad()
並從服務器加載數據或有另一種方法來處理此問題,而不是每次調用viewDidLoad()
。
沒有拉在刷新屏幕
我是iOS新手,我有標籤欄。我有4個標籤,如Facebook。建議 - 底部導航處理
在我的情況下,當用戶轉到其中一個屏幕時,應該隨時從服務器更新所有數據。
有人說打電話viewDidLoad
經常會造成內存泄漏。真的嗎?
那麼這裏最好的戲是什麼?每次撥打viewDidLoad()
並從服務器加載數據或有另一種方法來處理此問題,而不是每次調用viewDidLoad()
。
沒有拉在刷新屏幕
viewDidLoad()
將只能被稱爲第一次的視圖控制器被加載。當用戶切換選項卡時,使用標籤欄控制器通常會將視圖控制器保存在內存中,所以如果您希望每次用戶進入新屏幕時都進行加載,則這不是最佳選擇。
我建議使用viewWillAppear
或viewDidAppear
。如果您要從網絡更新數據,請確保在後臺線程上進行加載,以確保接口不會被阻止(不管您使用哪種方法)。
就我個人而言,我會把網絡加載代碼放在viewDidAppear
之內,對於我來說,在視圖完成顯示後調用網絡更有意義,因爲它可能不會立即結束。通過這種方式,呈現顯示數據正在加載到用戶的UI元素也更容易。
viewDidAppear()? – Siyavash
@pmb這裏是答案 - :https://stackoverflow.com/questions/1579550/uiviewcontroller-viewdidload-vs-viewwillappear-what-is-the-proper-division-of。不知道有關內存泄漏,雖然我不這麼認爲。或甚至我想現在其他成員的建議。 –