我遇到問題。我正在開發基於標籤欄的應用程序。在這個應用程序中,當我們想要導航到新的視圖時,我們調用[self.view addSubview:newVC.view]
。 newVC是我們想要顯示的新視圖的視圖控制器。當我們想要回到上一個視圖時,我們也使用[self.view removeFromSuperview]
。ViewDidAppear不會在基於標籤欄的應用程序中調用
因此,換句話說,沒有導航控制器。現在問題是我想更新以前的視圖。由於我們使用的是[self.view removeFromSuperview]
,viewDidAppear
之前的視圖沒有被調用,所以我們沒有辦法刷新該視圖。
我知道,我們採用了瑕疵,但因爲它的大規模應用,並改變它來實現與取大量的時間導航控制器,所以我需要你幫我找到這個問題的解決辦法。我怎樣才能撥打viewDidLoad
或viewDidAppear
或從其子視圖呼叫[self.view removeFromSuperview]
以前的觀點?只有在當你跳進控制器通過pushViewController
方法
我想你可以在'[self.view removeFromSuperview]'之前嘗試'[super viewDidLoad]'''。我沒有嘗試這個,但我認爲這將工作 –
你不應該自己調用viewDidLoad。這將在你的視圖加載後被調用。如果您手動調用它,將會發生可怕的事情,特別是如果視圖實際上未加載。 –
爲什麼不把父視圖控制器引用到子視圖中,並通過調用您實現的特定方法來操縱它,以便您對其進行處理? – Saran