在 iOS7 下,我遇到了一个问题,如果设置了特定的背景图像,后退按钮项将不会显示:
int imageSize = 21; //REPLACE WITH YOUR IMAGE WIDTH
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(-400.f, 0)
forBarMetrics:UIBarMetricsDefault];
UIImage *barBackBtnImg = [[UIImage imageNamed:@"BackArrowDark.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, imageSize, 0, 0)];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:barBackBtnImg
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
执行此操作后,我在导航控制器中推送的任何 ViewController 都不会出现后退按钮项,即使按下它应该在的位置也会使其出现,并且此视图控制器的任何后续推送都会使按钮出现在屏幕上.
这个问题只在iOS7下出现:在iOS6下一切正常。
使用 leftBarButtonItem 完全更改后退按钮会禁用后退滑动,因此这不是一个选项。
知道我做错了什么吗?
非常感谢您的考虑。