我的應用程序中有四個選項卡。當用戶第一次打開應用程序時,他會看到第一個選項卡的視圖控制器。此時,我想加載所有其他標籤的內容,因此當用戶打開其他標籤時,他會立即看到內容。Force ViewController在打開之前加載
我知道這是可能在Android中。在iOS中可以嗎?
編輯:
我試圖通過調用[myViewController view];
內的AppDelegate準備一個視圖控制器,但是當我點擊打開的的viewController的標籤,它似乎有一個新的觀點再次加載。
相關:Force viewDidLoad to fire on iOS
將您的數據邏輯移動到初始化方法,例如ViewController的initWithCoder。這種方式當ViewControllers被Tabbarcontroller初始化時,你將會準備好你的數據。確保在後臺線程中執行繁重的數據邏輯。 –
@Puneet謝謝..我只是試了一下,似乎我沒有得到那麼多的性能提升。所有選項卡都有自己的webView,並且我在'initWithCoder'中加載了一個webview,並在'viewWillAppear'中調用了'addSubview'。我認爲'addSubview'不能在'initWithCoder'階段被調用。什麼時候可以加載每個標籤頁的最快時間? –
Webview只有在它被添加到您可以在viewDidLoad中最早完成的子視圖時纔開始加載。嘗試在init中使用webview的startLoading方法,並在添加到子視圖之前查看它是否已加載。 –