如何为所有iPhone分辨率选择1个UIImage大小?

时间:2016-02-22 14:12:44

标签: ios uiimage screen-resolution

如果可以(目前)只添加一个图像尺寸,我应该选择什么图像尺寸? 图像将在UITableViewCell中使用,很可能宽度将从边缘到边缘,而高度可能会有所不同。

那么我应该添加1242px宽度图像然后应用程序本身会将其缩小到750 / 640px吗?或者我应该使用750px,因为iPhone 6用户比6+用户多,而且更多用户会有更好看的图像(换句话说,更多的人会看到原始图像,而不是缩放)?

1 个答案:

答案 0 :(得分:2)

使用1242px图像并缩小尺寸。要获得最佳图像质量集yourUIImageView.layer.minificationFilter = kCAFilterTrilinear。使用三线性过滤时,您不会发现图像质量有任何差异。

另一个选择是在使用之前缩小图像尺寸:

extension UIImage {
  public func rescale(width: CGFloat, _ height: CGFloat) -> UIImage {
    let newSize = CGSizeMake(width, height)

    UIGraphicsBeginImageContextWithOptions(newSize, false, 0.0)
    drawInRect(CGRectMake(0.0, 0.0, newSize.width, newSize.height))
    let scaledImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()

    return scaledImage
  }
}

let myImage = UIImage(named: "myimage").rescale(newWidth, newHeight)