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