2010-07-21 87 views
0

我有我的標籤欄控制器中的幾個選項卡,只有一個(第一個)我需要一個自動重新加載每次我選擇它的選項卡(以及當應用程序返回到前景)。重新加載視圖控制器時按下標籤

我沒有找到如何做到這一點,我是否需要每次手動重新創建標籤欄控制器?我是否需要將一組新的視圖控制器添加到標籤欄控制器?

感謝您的幫助

+0

你需要重新加載什麼?數據?圖片? UITableView的? – jmont 2010-07-21 17:28:03

+0

從你的問題來看,很難確切地說出你想要做什麼。但是你可能會感興趣的是UITabBarControllerDelegate協議的shouldSelectViewController和didSelectViewController方法。 – 2010-07-21 17:42:01

+0

事實上,當viewController被加載時,會執行一個http請求。我需要每次單擊該選項卡時執行此請求。你是對的威廉,我使用TabBar協議的這兩種方法,但我認爲我的問題是如何使用它們來分配/重新分配屬於第一個選項卡的控制器。目前我使用這些方法來檢查新標籤何時被點擊。 – Luc 2010-07-21 21:27:58

回答

0

會是有意義的有updateView函數的,你可以在viewWillAppear上,確保一切特定視圖調用是跟上時代的每一個視圖設置爲顯示時間?

+0

認爲viewWillAppear僅被調用一次,而不是每次單擊選項卡時。我需要在每次點擊標籤時釋放/初始化視圖,以便觸發此viewWillAppear方法。但你是對的,我需要調用的函數(http請求)位於viewWillAppear中。 – Luc 2010-07-21 21:30:11

0

如果UIViewController是一個UITabBarControllerDelegate它會得到此回調,這是你想要什麼,我相信:

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController 

只需return YES呼喚你updateView方法之後。

相關問題