0

内部にナビゲーションコントローラーを持つ3つのタブを持つタブコントローラーがあります。

// account view
UINavigationController * firstNavController = [[UINavigationController alloc]initWithRootViewController: viewController1];
viewController2.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:2];

// book view
UINavigationController * secondNavController = [[UINavigationController alloc]initWithRootViewController: viewController2];
viewController3.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:3];

// invite view
UINavigationController * thirdNavController = [[UINavigationController alloc]initWithRootViewController: viewController3];


CATransition *transition = [CATransition animation];
transition.duration = 0.7f;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionFade;

[firstNavController.view.layer addAnimation: transition forKey:nil];
[secondNavController.view.layer addAnimation: transition forKey:nil];
[thirdNavController.view.layer addAnimation: transition forKey:nil];

_tabBarController.viewControllers = [[NSArray alloc] initWithObjects: firstNavController, secondNavController, thirdNavController,  nil];

マイ アカウント ページに移動できる右ボタン付きのナビゲーション バーがあります。ナビゲーションコントローラーを使わずにどうすればいいですか? たとえば、ユーザーがタブ バー ボタン 1 をクリックすると、ナビゲーション コントローラーが表示されます (選択できるサービスのリストが表示されます)。右上の [マイ アカウント] ボタンをクリックすると、下部にタブ バーがある新しいナビゲーション コントローラーが開き、[マイ アカウント] ページの [戻る] ボタンをクリックできないようにする必要があります (これがこの新しいナビゲーションのルート コントローラーであるため)。コントローラ。

これどうやってするの?

基本的に、新しいView Controllerをコントローラー2のナビゲーションコントローラーにプッシュせずに、別のView Controller(コントローラー2)から新しいView Controller(コントローラー1-私のアカウント)を開きたいと思います。コントローラー1の下部にはタブバーが必要ですが、戻るボタンはありません。

4

2 に答える 2

1

コントローラー 2 から、これを使用して最初のコントローラーに切り替えることができます (最初のタブのコントローラーを意味すると仮定します)。

self.tabBarController.selectedIndex = 0;

self.navigationBarHidden = YES を使用して、最初のコントローラーの viewDidAppear メソッドでナビゲーション バーを非表示にできると思います

于 2012-12-02T05:08:17.543 に答える
0

をプッシュする代わりに、LoginViewController使用してみてくださいpresentModalViewController

あなたのナビゲーションrightBarButtonアクションで与える

[self presentModalViewController:loginViewController animated:YES];
于 2012-12-05T11:17:52.633 に答える