针对不同的屏幕尺寸缩放触摸点

Scale touch points for different screen sizes

给定一个 CGPoint 触摸点,有没有一种方法可以缩放 x、y 值,使其在所有屏幕上保持一致 sizes/resolutions(不同的 iPad、不同的 iPhone )?

确定一个标准大小,然后将要插值的点乘以当前 width/height 与标准 width/height 的商。

guard let currentSize = (UIApplication.shared.delegate as? AppDelegate)?.window?.bounds.size else {
    return
}

let standardSize = CGSize(width: 320, height: 568)
let point = CGPoint(x: 120, y: 120)
let interpolatedPoint = CGPoint(x: point.x * currentSize.width / standardSize.width, y: point.y * currentSize.height / standardSize.height)