我试图找到可以相对于视图的中心位置缩放和移动的图像的x和y坐标。一个位置的x和y坐标在任何设备中都应该相同。这就是为什么我想要查找图像位置坐标,因为无论使用哪种设备,图像分辨率都不会改变。到目前为止,我已经附上了源代码。有人可以给我一个建议吗?
link to the GitHub project
我能够通过触摸图像来获得确切的图像坐标,这就是我尝试的方式,但是我想通过按一下按钮单击事件来获得该坐标
@objc func tapAction(tapGestureRecognizer: UITapGestureRecognizer)
{
let touchPoint: CGPoint = tapGestureRecognizer.location(in:
self.imageView)
let Z1 = imageView.image!.size.height
let Z2 = imageView.image!.size.width
let Z3 = imageView.bounds.minY
let Z4 = imageView.bounds.minX
let Z5 = imageView.bounds.height
let Z6 = imageView.bounds.width
let pos1 = (touchPoint.x - Z4) * Z2 / Z6
let pos2 = (touchPoint.y - Z3) * Z1 / Z5
let ZZ1 = "\(pos1)"
let ZZ2 = "\(pos2)"
tochpointvalues.text = "Touched point x:\(ZZ1), y:\(ZZ2)"
print("Touched point (\(ZZ1), \(ZZ2)")
}
答案 0 :(得分:0)
要获取子视图相对于其父视图的(x,y)坐标,可以使用convert(_ :, to:)
方法。示例:
let childCoordinate = parentView.convert(childView.frame.origin, to: parentView)