UITabBarController
从rootViewController
加载为UINavigationController
。我有6个Tabs
和FifthViewController
,SixthViewController
位于More
标签下,他们会推送DetailsViewController
来显示详细信息。我无法在DetailsViewController
中显示返回按钮以返回ParentViewController。我尝试了以下所有选项,但是,它们都没有工作。
我从UITabBarController
加载Storyboard
作为初始视图控制器,并从FifthViewController
加载SixthViewController
和Storyboard
。在FifthViewController
我正在设置标题
-(void)viewWillAppear:(BOOL)animated
{
self.title = @"Alerts" ;
self.tabBarController.title = @"Alerts" ;
}
在DetailsViewController
我正在设置标题
-(void)viewWillAppear:(BOOL)animated
{
//I tired all the below options to show back button
}
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] ;
self.navigationController.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] ;
self.tabBarController.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] ;
self.tabBarController.navigationController.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] ;
我在哪里做错了?
答案 0 :(得分:1)
根据您的说明,您的设置不正确。
UITabBarController
应该是应用的rootViewController
。每个标签应为UINavigationController
。应为每个选项卡设置适当的根视图控制器。
标签栏控制器本身不应位于导航控制器中。
您不应该设置任何导航项的backBarButtonItem
。
通过我描述的设置,每个选项卡都有自己独特的导航。例如,用户可以在选项卡2上,然后前进到该选项卡中的下一个视图控制器。标签仍然可见。现在,用户可以转到任何选项卡,稍后返回选项卡2,仍然位于该选项卡的第二个视图控制器上。
答案 1 :(得分:1)