3

我有一个应用程序,它的 UINavigationBars 中有一个带有自定义图像的后退按钮。在 iOS 6 中一切都很好,但在 iOS 7 中,按钮大部分时间都是“不可见的”。

当我将新的视图控制器推入 UINavigationController 时,新屏幕不会出现后退按钮,但如果我触摸按钮应该在的位置,它会淡入。

如果我在没有动画的导航控制器上设置了两个视图控制器,那么按钮会显示得很好,但不会出现在后续的推送中。

我很确定我的代码中没有任何内容故意隐藏后退按钮并更改 UINavigationBar 上可用的各种颜色没有任何区别。

4

1 回答 1

5

这可能是由于您必须实现 iOS 7 中引入的两个新 UINavigationBar 属性:

self.navigationController.navigationBar.backIndicatorImage = [UIImage customImage]; self.navigationController.navigationBar.backIndicatorTransitionMaskImage = [UIImage customImage];

iOS 7 过渡指南

“如果您想使用自定义图像来替换默认的 V 形,您还需要创建自定义蒙版图像。iOS 7 使用蒙版使前一个屏幕的标题在导航转换期间出现或消失在 V 形中. 要了解控制后退按钮和遮罩图像的属性,请参阅 UINavigationBar 类参考。"

于 2013-11-06T16:41:51.323 回答