Swift在UIView中检测Button的位置

时间:2015-01-18 20:47:17

标签: swift

我可以通过这个简单的代码

检测UIView中按下的按钮
func handlePan(recognizer:UIPanGestureRecognizer) {
    if let buttonRecognize = recognizer.view as? UIButton {
             let subviews = self.view.subviews as [UIView]
                    for v in subviews {
                        if let button = v as? UIButton {
                            if button.tag != -1  {
                               var p = button.superview?.convertPoint(button.center, toView: view)
                               println(p)
                }

    UIView.animateWithDuration(Double(slideFactor * 2),
            delay: 0,

            options: UIViewAnimationOptions.CurveEaseOut,
            animations: {recognizer.view!.center = finalPoint },
            completion: nil)
        }}}}
}

可以在UIView中检测按钮的位置吗?

  

for(0,0)Uiview =(367.666656494141,207.33332824707)for func handlePan

我想找到按钮的值,而不是UIView的中心是UIView本身的值,而不是func handlePan的值,其中心是左上角!!

P.S。我试图在

后移动let子视图等
completion: nil

但结果不会改变!!

1 个答案:

答案 0 :(得分:1)

您可以使用

将点坐标系转换为指定视图的坐标系
  

convertPoint(_ point:CGPoint,toView view:UIView?)

toView是要转换的坐标系。