找回密码
 立即注册
手机部手机左上角模拟器 | 软件设计/软件工程 2022-05-03 230 0star收藏 版权: . 保留作者信息 . 禁止商业使用 . 禁止修改作品
问题
我想计算发送到另一部手机时 touch.location 的响应
  1. override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
  2.     swiped = false
  3.     if let touch = touches.first {
  4.         lastPoint = touch.location(in: self.imageView)
  5.         print (lastPoint.x)
  6.     }
  7. }
复制代码

注意 iPhone 8 屏幕底部的黑线位于 iPhone 11 promax 的中心

在 iPhone 8 模拟器上

在 iphone11promax 模拟器上

回答
现在,你正在做这样的事情:

该点将更靠近左上角,因为 CGPoint(x:30, y:40) 更靠近像素密度较高的手机的左上角。

相反,请尝试以下操作:

一。从手机 A 获取点,即 100 x 100 像素。然后除以高度和宽度。点是 CGPoint(x: 0.3, y: 0.4)。

2. 用宽和高相乘显示手机B上的点。 0.3*200=60,0.4*200=80。该点现在将正确显示。

这仅在两部手机具有相同的纵横比时才有效,否则图像将被拉伸以填充目标手机。





上一篇:jq 获取对象键并在一个过滤器中更改其名称
下一篇:如何在 Ruby 中使用变量访问符号哈希键