1

「すべてのメッセージ」、「お気に入りのメッセージ」の2つのUIViewControllerを備えたUITabBarControllerがあります。

一部のアクションでは、UITabBarアイテムを新しいもの(その他のアクション、その他の画像)に動的に置き換える必要があります...

したがって、「すべてのメッセージ」、「お気に入りのメッセージ」ではなく、「いいね」と「嫌い」にする必要があります。

それを行うための最良の方法は何ですか?

// Note
//I don't need ViewControllers for these items, I will use TabBar delegate
//so I can't do following:
tabBarVC.viewControllers = [NSArray ...new view controllers]

ありがとう

4

3 に答える 3

0

このコードはtabbarselectメソッドで使用できます

 if(tabbar.selectedindex==1)
 {
  self.title=@"newtitle"
 }

このような

 UITabBarController *tabbar1 = [[UITabBarController alloc] init];


secondviewcontroller  *second = [[secondviewcontroller alloc] initWithNibName:nil bundle:nil];
second.title=@"message";

firstviewcontroller *third=[[firstviewcontroller alloc]initWithNibName:nil bundle:nil];
third.title=@"all message";

   if(tabbar1.selectedindex==0)
 {
 second.title=@"like";
  third.title=@"DisLike";
 }

tabbar1.viewControllers = [NSArray arrayWithObjects: second,third,nil]; 
tabbar1.view.frame=CGRectMake(0, 0, 320, 460);
[self.view addSubview:tabbar1.view];
于 2012-05-03T10:59:30.580 に答える
0

UITabBarControllerドキュメントから

タブバーコントローラーのタブを構成するには、各タブのルートビューを提供するビューコントローラーをviewControllersプロパティに割り当てます。

あなたがそれを行うことができることは、tabBarControllerのツールバーを一時的に非表示にUIToolbarし、オプションを使用してその場所に新しいものを作成します

于 2012-05-03T10:53:55.357 に答える
0

この例は、選択されている現在のタブバーアイテムを削除する方法を示しています。

NSMutableArray* newArray = [NSMutableArray arrayWithArray:self.tabBarController.viewControllers];
[newArray removeObject:self];
[self.tabBarController setViewControllers:newArray animated:YES];

に変更を加えてtabbar items arraysetviewcontrollers

于 2012-05-03T11:27:28.000 に答える