使图像适合屏幕

时间:2016-04-17 21:49:36

标签: iphone xcode swift uiimageview launch-screen

我在所有尺寸(320x480 640x960 640x1136 750x1334 1242x2208)中都有相同的图像,我将这些图像用于启动屏幕(资产 - >新的iOS启动图像)。 我想在应用程序的运行时使用这些图像(在UIImageView中)选择适合大小屏幕的图像使用的设备。 在Launch Screen中是完美的,但如果我使用LaunchImage for UIImageView,则视图中的图像是不同的。

在此链接中有我的测试代码(Launch.zip)https://github.com/Volpesio/Launch.git 这段代码运行启动图像(完美),在显示一个UIImageView之后,它应该使用相同的Launch图像但是不同的

如何调整大小或如何为正在使用的设备选择正确的图像? 你可以帮帮我..

1 个答案:

答案 0 :(得分:0)

我用这段代码解决了它:

extension UIImage {
    convenience init?(fullscreenNamed name: String)  {
        switch UIScreen.mainScreen().bounds.size.height {
        case 480: //iPhone 4/4s
            self.init(named: "\(name)-700@2x.png")
        case 568: //iPhone 5/5s
            self.init(named: "\(name)-700-568h@2x.png")
        case 667: //iPhone 6/6s
            self.init(named: "\(name)-800-667h@2x.png")
        case 736: //iPhone 6+/6s+
            self.init(named: "\(name)-800-Portrait-736h@3x.png")
        default:
            self.init(named: name)
        }
    }
}

我将“LaunchImage”用于正在使用的设备屏幕的正确图像