单击导航返回按钮,然后导航栏重叠相同的视图
Posted
技术标签:
【中文标题】单击导航返回按钮,然后导航栏重叠相同的视图【英文标题】:Click on navigation back button then navigation bar overlap same view 【发布时间】:2016-02-01 10:19:13 【问题描述】:我有 3 个视图控制器 A B 和 C。从 B 到 C 我可以将纵向模式导航到横向模式。现在好了。当我从 C 导航到 B(横向到纵向模式)视图控制器时。然后再次现在很好。但是在 C 视图控制器中,我有一个自定义后退按钮。当我单击该按钮时,它将从 C 导航到 B 视图控制器。在 B 视图控制器页面中,我单击它重叠的导航返回按钮(不导航到 A 视图控制器)。两次后,它将导航到 A 视图控制器
【问题讨论】:
任何截图或代码来帮助理解问题? 【参考方案1】:您可以使用自己的自定义视图作为导航栏。检查一次:
self.navigationController.navigationBarHidden = YES;
UIView *newNavBar = [[UIView alloc] init];
newNavBar.backgroundColor = [UIColor colorWithRed:255.0/255.0 green:150.0/255.0 blue:0.0/255.0 alpha:1.0];
UIImageView *backgroundImgView = [[UIImageView alloc]init];
backgroundImgView.image = [UIImage imageNamed:@"abc_image"];
[newNavBar addSubview:backgroundImgView];
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
backBtn.frame=CGRectMake(5,15, 50, 50);//set frames according to your req
[backBtn setImage:[UIImage imageNamed:@"xyz_icon"] forState:UIControlStateNormal];
[backBtn addTarget:self action:@selector(backBtnAction) //your method forControlEvents:UIControlEventTouchUpInside];
[newNavBar addSubview:backBtn];
[self.view addSubview:newNavBar];
这对我来说适用于推送/弹出等。
希望这会有所帮助。
【讨论】:
我为您的发送代码找到了解决方案。它间接帮助了我,感谢您的帮助以上是关于单击导航返回按钮,然后导航栏重叠相同的视图的主要内容,如果未能解决你的问题,请参考以下文章