簡體   English   中英

根據選定的標簽欄項目更改navigationItem標題的標題

[英]Change title of navigationItem Title based on selected Tab Bar Item

在此輸入圖像描述 我有一個標簽欄視圖控制器,有四個可能的視圖控制器。 所有其他視圖都有關系的主標簽欄視圖也有一個導航欄,我可以雙擊並更改故事板中的標題。 我需要知道的是如何根據選定的標簽欄項更改此導航項的標題。

例如,我將有四個選項卡。 1是“Bills”,2是“Groceries”,3是“Gas”,4是“Personal”。 如果選中“票據選項卡”,我希望我的視圖標題為Bills,依此類推。

編輯:希望這將澄清我想要完成的事情。

我希望能夠在右側四個表視圖的頂部更改導航欄的標題。 標簽欄控制器是我唯一可以雙擊並在故事板上更改磁貼的地方。 我希望根據從選項卡欄中選擇的表視圖來更改標題。

你應該只能在每個“四個視圖控制器”中設置title屬性,如下所示:

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.title = @"Title For View Controller Goes Here";
}

然后,每當單擊此視圖控制器的所述選項卡時,導航欄的標題應更改為此標題。

編輯

聽起來你可能已經在標簽欄的視圖中放置了Interface Builder的UINavigationBar對象。 相反,您實際上希望將UITabBarController嵌入到UINavigationController

瀏覽Ray Wenderlich關於開始故事板的教程,這應該告訴你如何做到這一點:

http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1

祝好運!

在每個選項卡選項上,您可以更改標題。

   - (void)tabBarController:(UITabBarController *)tabBarController 
     didSelectViewController:(UIViewController *)viewController
    {
      viewController.title=@"your title"
    }

我應該警告你,這種方法可能是一個不優雅的黑客,因為我只是剛剛開始理解導航。 但這是我接近它的方式:

基本上,您應該為每個想要擁有標題的UIViewController添加一個UINavigationItem ,並根據UIViewController顯示的內容更改UINavigationItem的文本。

刪除手動添加到視圖控制器的任何導航欄項,並將其添加到viewDidLoad方法

self.navigationController.navigationBar.topItem.title = @"My Title";

要么

self.navigationController.topViewController.title = @"My Title";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM