2014-06-07 112 views
0

假設我有一個帶有5個ViewControllers的標籤欄,還有一個左右菜單。製作一個標籤欄按鈕打開右側菜單

我甲板的ViewController持有標籤欄爲中心的ViewController:

self.tabBarController.viewControllers = @[UINAVIGATIONCONTROLLER(feedController), 
               UINAVIGATIONCONTROLLER(myProfileController), 
               UINAVIGATIONCONTROLLER(topTradersController), 
               UINAVIGATIONCONTROLLER(stocksListController), 
              // UINAVIGATIONCONTROLLER(watchlistController), 
              ]; 





    self.deckController = [[STViewDeckController alloc] initWithCenterViewController:self.tabBarController 
                    leftViewController:settingsController 
                    rightViewController:watchlistController]; 

我想就在標籤欄按鈕打開右側的菜單,而不是敏銳地作出的TabBar推動該視圖控制器。

說我想「watchlistController」tabBar按鈕打開側面菜單,我怎麼能這樣做?

哦,我使用「IIViewDeckController」爲deckController

感謝

回答

0

可以防止tabBarController從表示使用UITableControllerDelegate和方法與該標籤相關聯的視圖/的viewController - (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController

添加以下代碼:

self.tabBarController.delegate = self; 

,然後實現THI s:

#pragma mark - UITabBarControllerDelegate 

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController { 
    BOOL isLeft = YES; 
    if (isLeft) { 
     [self.deckController openLeftView]; 
    } 
    else { 
     [self.deckController openRightView]; 
    } 

    return NO; 
} 

這應該對你有用。

相關問題