UITabBar 背景图像显示不正确

Big*_*air 1 image uitabbar ios swift

我制作了自定义 UITabBar 类并尝试设置背景图像。

tabBar.backgroundImage = UIImage(named: "my_image")?.imageWithRenderingMode(.AlwaysOriginal)
Run Code Online (Sandbox Code Playgroud)

我将图像文件名设置为 my_image@2x 图像文件为 640*98

我在 iPhone6 模拟器上运行,似乎图像不够宽,就像谷歌的“C”在下面的示例中重复

在此处输入图片说明

我使用了错误的图像大小还是其他错误?

zyl*_*env 7

只需重新绘制图像:

var image = UIImage(named: "my_image")
if let image = image {
    var centerImage: Bool = false
    var resizeImage: UIImage?
    let size = CGSize(width: UIScreen.mainScreen().bounds.size.width, height: 98)
    UIGraphicsBeginImageContextWithOptions(size, false, 0)
    if centerImage {
        //if you want to center image, use this code
        image.drawInRect(CGRect(origin: CGPoint(x: (size.width-image.size.width)/2, y: 0), size: image.size))
    }
    else {
        //stretch image
        image.drawInRect(CGRect(origin: CGPoint.zero, size: size))
    }
    resizeImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    tabBar.backgroundImage = resizeImage.imageWithRenderingMode(.AlwaysOriginal)
}
Run Code Online (Sandbox Code Playgroud)