0
私はautolayoutを扱うことができません、私はfacebook/instagramログインページと同様に実装する必要があります。つまり、入力フィールドのログインまたはパスワードをクリックすると、キーボードとすべての表現がウィンドウの新しいサイズに適応します。キーボードが表示された場合の表現の自動整列
キーボードの外観た後、それは次のようになります。自動レイアウトへ
func updateBottomLayoutConstraintWithNotification(_ notification: Notification) {
let userInfo = notification.userInfo!
let animationDuration = (userInfo[UIKeyboardAnimationDurationUserInfoKey] as! NSNumber).doubleValue
let keyboardEndFrame = (userInfo[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
let convertedKeyboardEndFrame = view.convert(keyboardEndFrame, from: view.window)
let rawAnimationCurve = (notification.userInfo![UIKeyboardAnimationCurveUserInfoKey] as! NSNumber).uint32Value << 16
let animationCurve = UIViewAnimationOptions.init(rawValue: UInt(rawAnimationCurve))
bottomLayoutConstraint.constant = (view.bounds).maxY - convertedKeyboardEndFrame.minY
UIView.animate(withDuration: animationDuration, delay: 0.0, options: animationCurve, animations: {
self.view.layoutIfNeeded()
}, completion: nil)
}
実行し、それが実装されている方法を確認Instagramの少し何かを参照してください。入力フィールドをクリックすると、すべての要素が上に移動します。 – Feanon