2015-07-21 35 views
1

我有一個標籤控制器顯示我的主屏幕。在我的主屏幕中,我的收藏視圖中有可選的過濾器。如果用戶點擊相同的標籤欄按鈕,我希望重置過濾器。目前,如果您已經在選項卡欄按鈕的相同視圖中,輕擊標籤欄按鈕不會執行任何操作。如果第二次點擊標籤欄按鈕,我該如何執行代碼?使用標籤欄按鈕重置視圖?

+0

我不知道任何簡單和優雅的方式來實現你想要的。也許你可以在活動標籤上添加一個不可見的按鈕? 順便說一句,你應該嘗試制定你的問題,以便它表達一個明確的問題,可以給出答案。你不應該徵求意見或想法。 –

回答

0

在UITabBarController子類中嘗試此方法或將tabbar委託放入控制器中。

override func tabBar(tabBar: UITabBar, didSelectItem item: UITabBarItem!) { 
     var isStatusbarWhite = false 
     for xx in (tabBar.items as! [UITabBarItem]){ 
     for var i:Int = 0 ; i < self.tabBar.items?.count ; ++i { 
      let xx = tabBar.items![i] as! UITabBarItem 
      if (xx == item){ 
       if tabBarController.selectedIndex == i { 
//YOUR CODE HERE SAME TAB SELECTED 
} 
      } 
     } 

    }