UIBarButtonItem 图像未显示,而是显示图像大小的白色矩形,为什么?
无论我尝试初始化 UIBarButtonItem 的任何图像,它都只是显示图像大小的白色背景。即使我厌倦了界面构建器,结果也是一样的。所有这些图像与其他对象一起使用时效果都很好。
我该如何解决这个问题?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
仅使用图像中的 alpha 值来创建栏按钮图像。无论您提供什么图像,都会根据 Alpha 值转换为带有白色阴影的图像。
因此,考虑到您的图像是完全白色的,很明显您没有任何透明度。
指南有这样的说法:
但是,您可以使用自定义视图来获取全彩图像,如以下问题所示:
我可以有一个带有彩色图像的 UIBarButtonItem 吗?
这有点过头了,最好遵循指南并使用普通按钮格式适当的图像。
Only alpha values in the image are used to create the bar button image. Whatever image you provide is converted into a image with shades of white, based on the alpha values.
So given that your image is completely white it is clear you don't have any transparency.
The guidelines have this to say:
You can however use a custom view to get a full-colour image as this question shows:
Can I have a UIBarButtonItem with a colored image?
This is a bit over the top though and it would be best to stick to the guidelines and use a normal button with an appropriately formatted image.
在 ios 7 及以上版本中这会有所帮助
In ios 7 onwards this will help
在 Swift 3 中
我发现以下工作 - 这里显示为多个 barButtonItem 的数组
这在右侧显示了 x2 barButtons。
要显示左侧,只需更改为
navigationItem.leftBarButtonItem = [barButtonItem1, barButtonItem2]
In Swift 3
I found that the following works - here shown as an array of more than one barButtonItem
This shows x2 barButtons on the rightHandSide.
To shown the left simply change to
navigationItem.leftBarButtonItem = [barButtonItem1, barButtonItem2]