键盘出现在Swift中时UITextField向上移动 [英] UITextField move up when keyboard appears in Swift

查看:213
本文介绍了键盘出现在Swift中时UITextField向上移动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当键盘出现时,我使用此代码将视图向上移动,在我的登录页面中,此代码非常有用,但在注册页面中,它却无效.

I use this code for move the view up when keyboard appears, in my login page this code worked great, but in the signup page it did not work.

func textFieldDidBeginEditing(textField: UITextField) {
    animateViewMoving(true, moveValue: 100)
}
func textFieldDidEndEditing(textField: UITextField) {
    animateViewMoving(false, moveValue: 100)
}

func animateViewMoving (up:Bool, moveValue :CGFloat){
    var movementDuration:NSTimeInterval = 0.3
    var movement:CGFloat = ( up ? -moveValue : moveValue)
    UIView.beginAnimations( "animateView", context: nil)
    UIView.setAnimationBeginsFromCurrentState(true)
    UIView.setAnimationDuration(movementDuration )
    self.view.frame = CGRectOffset(self.view.frame, 0,  movement)
    UIView.commitAnimations()
}

我还有另一个在键盘上返回键的功能,它也可以在登录页面上使用,但不能在注册页面上使用.两页之间的所有内容都相同.

I have another function to return key on the keyboard, it also worked on the login page but not on the signup page. All things are same between the two pages.

  func textFieldShouldReturn(textField: UITextField) -> Bool {

    textField.resignFirstResponder()
    return true
}

推荐答案

您是否已在ViewController类中分配了UITextField的委托? 如果未将其设置为self.

have you assigned your delegate of UITextField in your ViewController class? if not set it to self.

self.youttextfield.delegate = self

这篇关于键盘出现在Swift中时UITextField向上移动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆