私はViewController複数のカスタムビューを持っています。CustomViewには xib という名前がcustomView.xibあり、 に実装されていCustomView.swiftます。
CustomViewにはテキストフィールドがあり、そのデリゲートは に実装されていCustomView.swiftます。
CustomView内のテキストフィールドViewControllerがタップされると、デリゲート メソッド:
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 をこの値にオフセットして、ビューがスクロールの上部に表示されるようにします。
現在の場所:境界がゼロで、座標を渡すことができませんCustomView.swift
何かアドバイス?