是否可以使用UINavigationController但隐藏其导航栏(将其替换为自定义工具栏)并返回按钮

ara*_*ide 11 iphone

我希望使用UINavigationController在2个UIViewController之间切换.(AUIViewController,BUIViewController与UIView AView,BView相关)

AView有一个UIButton,BView也有一个UIButton.如果我按下AView上的按钮,它将推送BViewController并显示BView.如果我按下BView上的按钮,BViewController将弹出并返回AUIViewController.

我希望使用UINavigationController的导航功能,但隐藏它的"返回"栏和导航栏,只使用2个按钮告诉UINaviationController它需要做什么.可能吗?

Tho*_*son 21

隐藏UINavigationController的导航栏:

[self.navigationController setNavigationBarHidden:YES];
Run Code Online (Sandbox Code Playgroud)

从按钮推送视图控制器:

- (void)pushNextViewController {
    NextViewController *page = [[NextViewController alloc] initWithNibName:nil bundle:nil];
    [self.navigationController pushViewController:page animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

要将视图控制器弹回一个:

- (void)popToLastViewController {
    [self.navigationController popViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,另一种方法:[self.navigationController setNavigationBarHidden:YES animated:YES]; 允许用动画显示/隐藏控制器. (4认同)