Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 从视图控制器获取自定义视图边界_Ios_Swift_Uiscrollview_Contentoffset - Fatal编程技术网

Ios 从视图控制器获取自定义视图边界

Ios 从视图控制器获取自定义视图边界,ios,swift,uiscrollview,contentoffset,Ios,Swift,Uiscrollview,Contentoffset,我有带有多个自定义视图的ViewControllerCustomView有一个名为CustomView.xib的xib,并在CustomView.swift中实现 CustomView有textfield,其委托在CustomView.swift中实现 点击ViewController中的CustomView中的textfield时,委托方法: func textFieldDidBeginEditing(textField: UITextField) { var fiel

我有带有多个自定义视图的
ViewController
CustomView
有一个名为
CustomView.xib
的xib,并在
CustomView.swift
中实现

CustomView
有textfield,其委托在
CustomView.swift
中实现

点击
ViewController
中的
CustomView
中的textfield时,委托方法:

    func textFieldDidBeginEditing(textField: UITextField) {
        var field = textField as! AddItemTextField
         ViewController?.makeViewOffset(self.bounds.origin.y - 20)          
        }
    }
函数make offset在
ViewController
中实现:

func makeViewOffset(offset: CGFloat) {
    UIView.animateWithDuration(0.5, animations: { () -> Void in
        self.scrollView.contentOffset.y = offset
    })
}
所以,我想要实现的是:当点击一些CustomView时,获取它们在我的scrollView中的位置,并将scrollView偏移到此值,这样视图将显示在scroll的顶部

我当前所在的位置:我的边界为零,我无法将坐标传递给
CustomView.swift


有什么建议吗?

我试着做@teamnorge回答。 方法


所有这些都对我有用。仅此而已。

您可以查看UIView类的convertRect:toView convertRect:fromView方法。@teamnorge酷!这对我很有帮助。如果你能提出一个答案,我会尽快申请!非常感谢。
func convertRect(rect: CGRect, fromView view: UIView?) -> CGRect