设备上的导航栏UIBarButtonItem外观不同

4

我有一个自定义的返回按钮图标,我正在为我的导航控制器使用它。在视图控制器中,我使用以下代码。

var myImage = UIImage(named: "previous");
UIBarButtonItem.appearance().setBackButtonBackgroundImage(myImage, forState: .Normal, barMetrics: .Default);
let backItem = UIBarButtonItem(title: "", style: .Plain, target: nil, action: nil)
navigationItem.backBarButtonItem = backItem

在测试期间的结果如下:

测试期间的后退按钮

但是,当我的应用程序上架到应用商店时,结果变成了这样:

输入图像描述

有人知道为什么结果不同,以及我该如何修复外观?如果不能,请问还有其他方法可以更改返回按钮项。这真的很烦人,因为我的应用程序有一个我不知道的错误,需要10天才能找到解决方法更新。 更新:似乎如果左侧项目有文本,则图像会围绕文本换行。但是,我使用了一个空字符串,因为我不能使用nil,因为那会使用导航控制器提供的默认文本。所以结果是图像轻微换行。
1个回答

0

尝试使用这段代码:

let backImage = UIImage(named: "BackButton")?.resizableImageWithCapInsets(UIEdgeInsetsMake(0, 25, 0, 0))
UIBarButtonItem.appearance().setBackButtonBackgroundImage(backImage, forState: .Normal, barMetrics: .Default)
UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffsetMake(-1000, -1000), forBarMetrics: .Default)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接