iOS 7 中的 UINavigationController 后退按钮雪佛龙
Posted
技术标签:
【中文标题】iOS 7 中的 UINavigationController 后退按钮雪佛龙【英文标题】:UINavigationController Back Button Chevron in iOS 7 【发布时间】:2013-10-03 19:50:04 【问题描述】:我想说的是,我很享受向 ios 7 的过渡,但感觉就像是一场又一场的战斗,才能让应用程序再次正常运行。
我当前的问题是 uinavigationcontroller。它嵌入在选项卡控制器中。当用户开始向下钻取类别时,就会出现问题。后退按钮 V 形移动到导航栏的左上部分,而实际的后退按钮保持固定在其正常位置。代码没有做任何操作。它只是推送和弹出视图控制器。
这是问题的截图:
有没有人遇到过这个问题,并且知道如何解决它?欢迎所有建议。
【问题讨论】:
【参考方案1】:您是否更改了字体大小 - 这可能更改了导致位移的 line-height 值?
最好选择自定义后退按钮,这样您就可以更好地控制展示位置。你可以把这个sn-p放在viewDidLoad中
if ( [self.navigationController.viewControllers count] > 1 )
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[backBtn setAdjustsImageWhenHighlighted:NO];
[backBtn setShowsTouchWhenHighlighted:YES];
[backBtn setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
UIImage *backBtnImage = [UIImage imageNamed:@"back.png"]; // <-- Use your own image
[backBtn setImage:backBtnImage forState:UIControlStateNormal];
[backBtn addTarget:self action:@selector(goBack) forControlEvents:UIControlEventTouchUpInside];
backBtn.frame = CGRectMake(0, 0, 40, 40);
UIBarButtonItem *backBarBtnItem = [[UIBarButtonItem alloc] initWithCustomView:backBtn];
self.navigationItem.leftBarButtonItem = backBarBtnItem;
同时添加自定义返回按钮触摸事件的方法:
- (void)goBack
[self.navigationController popViewControllerAnimated:YES];
【讨论】:
以上是关于iOS 7 中的 UINavigationController 后退按钮雪佛龙的主要内容,如果未能解决你的问题,请参考以下文章
应用程序唤醒后 UINavigationController 堆栈上的 UIViewController 重复
iOS 7中的iOS 7 AVPlayer AVPlayerItem持续时间不正确
PhoneGap:iOS 7 中的 UIPickerView 不会像在 iOS 6 中那样自动调整字体大小。关于如何在 iOS 7 中实现的任何解决方案?