2011-12-21 5 views
0

ここはviewDidLoadとviewWillAppearで書かれたコード行ですが、まだuitabbarの項目タイトルは変更されていません。uitabBarItemのタイトルを変更するにはNIBファイルかprorammaticallyのいずれか

[[self.userTabBarController.viewControllers objectAtIndex:1] setTitle:@ "Your title"]; userTabBarControllerが

IBOutlet UITabBarController *userTabBarController; 

私のタブバーがある

は、3つのタブがあり、これらは3異なるのViewControllerでconectingされており、それが罰金をロードしています。

なぜタイトルが設定されていないのか、コードはよく見えるようです。

答えて

2

このお試しください:それはあなたのために動作しませんでしたので、私はあなたのtabbarcontrollerでビューコントローラの実装ファイルに行くと、単純にやってお勧めします

MyViewController *viewController = [self.userTabBarController.viewControllers objectAtIndex:1] 

[viewController setTitle:@"Your title"]; 

を:のviewDidLoadで

self.title = @"my title"; 

方法。

+0

いや前に、それが動作していない投稿者から同じように見えますだって。この行のコードを書く場所は、どの関数でですか? –

+0

@Ajay_Kumar ViewController実装ファイルとviewDidLoadに行くことをお勧めします。self.title = @ "my title" –

+0

私の最初のtab viewControllerの名前はhomescreenvcで、「self.title = @ "my title"; 'viewDidloadでは、何も起こっていない、まだ私はタイトルを見ていない。私はnibファイル内の各タブのタイトルを入れましたが、そこからもロードされていません。 –

0

このお試しください:NIB、this.will作業でビューコントローラのタイトルプロパティを設定し

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) 
    { 
     [self setTabBarItem:[[UITabBarItem alloc] initWithTitle:@"Aktuelles" image:[UIImage imageNamed:@"News.png"] tag:0]]; 
     self.title = @"Aktuelles"; 
    } 
    return self; 
} 
+0

上記のコードをviewDidloadに書きましたが、何も起こりません。私は他の場所の設定から間違っているのですか、それとも一般的な問題ですか?私はすべてのコードが同じように見えるすべてのものを検索しました。 –

+0

デバッグし、tabBarItemの有効なアドレスが表示されているかどうかを確認します。コンソールでこれを(デバッグモードで)以下のように入力します:po tabBarItem.titleと表示される文字列を参照してください... –

+0

選択したタブが属するviewcontrollerのviewDidload、viewDidAppear、viewWillAppear、awakeFromNibのいずれも呼び出さないことがわかりました。しかし、XIBファイルが読み込まれているのは、designigが画面上に表示されているからです。 –

0

をそのawakeFromNib方法:

- (void) awakeFromNib 
{ 
    self.title = "My Title"; 
} 
0

のようなあなたのviewController..changeの.MファイルあなたinitWithNibName方法で

UITabBar *tabBar = self.userTabBarController.tabBar; 
UITabBarItem *tabBarItem = [[tabBar items] objectAtIndex:0]; 
[tabBarItem setTitle:@"New Title"]; 
0

あなたはIBで探索することができますかappdelegateファイルにない、それを設定するには、あなたがこれを使用することができます:

[[self.parentViewController.tabBarController.tabBar.items objectAtIndex:0] setTitle:@"new title 1"]; 
[[self.parentViewController.tabBarController.tabBar.items objectAtIndex:1] setTitle:@"new title 2"]; 
[[self.parentViewController.tabBarController.tabBar.items objectAtIndex:2] setTitle:@"new title 3"]; 

編集を:それは私のXPの

0
UITabBarItem *item = [self tabBarItem]; 
item.title = @"Hi"; 
関連する問題