【问题标题】:Get custom view bounds from view controller从视图控制器获取自定义视图边界
【发布时间】:2015-08-18 08:29:57
【问题描述】:

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

CustomView 有文本字段,其委托在CustomView.swift 中实现。

当点击ViewControllerCustomView 中的文本字段时,委托方法:

    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
    })
}

所以,我想要实现的是:当一些customViews被点击时,获取它们在我的scrollView中的位置,并使scrollView偏移到这个值,这样视图就会在scroll的顶部可见。

我目前所处的位置:我的界限为零,我无法将坐标传递给CustomView.swift

有什么建议吗?

【问题讨论】:

  • 你看看 UIView 类的 convertRect:toView convertRect:fromView 方法。
  • @teamnorge 酷!对我有很大帮助。如果你会提出一个答案 - 我会尽快应用它!谢谢!

标签: ios swift uiscrollview contentoffset


【解决方案1】:

我试着回答@teamnorge。 方法

func convertRect(rect: CGRect, fromView view: UIView?) -> CGRect

一切都为我工作。就是这样。

【讨论】:

    猜你喜欢
    • 2016-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-14
    • 2011-05-15
    • 2015-01-10
    • 1970-01-01
    相关资源
    最近更新 更多