在按UIViewController时隐藏UITabBarController的标签栏

use*_*666 0 iphone objective-c uitabbarcontroller uitabbar ios

我有一个标签栏应用程序.这是启动代码

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.
    [self.window makeKeyAndVisible];



    self.tabBarController=[[UITabBarController alloc] init];


    StartViewController *startViewController=[[StartViewController alloc] initWithNibName:@"StartViewController" bundle:nil];
    NavRootViewController *navRootViewController=[[NavRootViewController alloc] initWithNavControllerWithSubViewController:startViewController];

    HelpViewController *helpViewController=[[HelpViewController alloc] initWithNibName:@"HelpViewController" bundle:nil];

    SettingsViewController *settingsViewController=[[SettingsViewController alloc] initWithNibName:@"SettingsViewController" bundle:nil];

    AboutUsViewController *aboutUsViewController=[[AboutUsViewController alloc] initWithNibName:@"AboutUsViewController" bundle:nil];

    [self.tabBarController setViewControllers:[NSArray arrayWithObjects: navRootViewController, helpViewController, settingsViewController, aboutUsViewController, nil]];



    [[UIApplication sharedApplication] setStatusBarHidden:YES];
    self.window.backgroundColor = [UIColor whiteColor];
    self.window.rootViewController=self.tabBarController;
Run Code Online (Sandbox Code Playgroud)

使用4个标签栏选项卡启动应用程序 用户在第一个选项卡的导航控制器的根视图控制器中按下开始按钮后调用此操作

-(IBAction)startPressed:(id)sender
{
    NSLog(@"startPressed: called");


    RootViewController *vController=[[RootViewController alloc] initWithNibName:@"RootViewController" bundle:nil];
    [self.navigationController pushViewController:vController animated:YES];

}
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我需要隐藏标签栏我的RootViewController 财产hidesBottomBarWhenPushed不起作用.请帮帮我,怎么办?

Nis*_*ant 6

我希望这可以帮助你:

- (void)viewWillAppear: (BOOL)animated 
{ 
    self.hidesBottomBarWhenPushed = YES; 
}
Run Code Online (Sandbox Code Playgroud)