2012-08-10 38 views
0

我的看法現在包含3 uitabbaritem。在第一個選項卡,我按照無法命名標題爲導航欄添加segmentcontroller後titleView

-(void)viewDidLoad { 

    // Enable 'segmentControl' on navigation bar 
    self.navigationItem.titleView    = self.segmentedControl; 
} 

添加segmentcontrollerself.navigationItem.titleView什麼最終是

enter image description here

接下來,當我切換到第二uitabbaritem,我隱藏segmentcontroller和名稱導航標題如下

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { 
    if (item.tag == 1) { 
     self.navigationItem.titleView.hidden = NO; 
    } 

    if (item.tag == 2) { 
     self.navigationItem.titleView.hidden = YES; 
     self.title   = @"support"; 
    } 
} 

但是,點擊第二個uitbarbatitem後,標題不顯示在導航欄上。 enter image description here

如果您知道我做錯了什麼,請諮詢我。謝謝

回答

1

當存在titleView集時,不顯示title,無論它是否隱藏。您必須將titleView設置爲nil

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item { 
    if (item.tag == 1) { 
     self.navigationItem.titleView = self.segmentedControl; 
     self.title = nil; 
    } 

    if (item.tag == 2) { 
     self.navigationItem.titleView = nil; 
     self.title = @"support"; 
    } 
} 
+0

像魅力一樣工作。謝謝 – tranvutuan 2012-08-10 15:19:39