根据iOS中超级视图的中心位置获取图像的x和y坐标

时间:2018-08-02 05:23:27

标签: ios swift

我试图找到可以相对于视图的中心位置缩放和移动的图像的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)")
}

1 个答案:

答案 0 :(得分:0)

要获取子视图相对于其父视图的(x,y)坐标,可以使用convert(_ :, to:)方法。示例:

let childCoordinate = parentView.convert(childView.frame.origin, to: parentView)