Swift 如何在没有scrollview的情况下为键盘移动带有文本字段的imageView?

Swift 如何在没有scrollview的情况下为键盘移动带有文本字段的imageView?,swift,xcode,Swift,Xcode,我用密码和登录创建模板授权页面!我将文本字段(密码和登录名)放在imageView的顶部,是否可以在没有scrollView的情况下实现键盘不会与imageView重叠?当用户单击文本字段时,您可以调用此功能: func textFieldDidBeginEditing(_ textField: UITextField) { UIView.animate(withDuration: 0.3) { self.logoImage.center.y = self.logoIma

我用密码和登录创建模板授权页面!我将文本字段(密码和登录名)放在imageView的顶部,是否可以在没有scrollView的情况下实现键盘不会与imageView重叠?

当用户单击文本字段时,您可以调用此功能:

func textFieldDidBeginEditing(_ textField: UITextField) {
    UIView.animate(withDuration: 0.3) {
        self.logoImage.center.y = self.logoImage.center.y - 70
        self.searchBar.center.y = self.searchBar.center.y - 70
        self.view.layoutIfNeeded()
    }
}
当用户停止键入时,在不编辑之前,所有内容都将保持不变

func textFieldDidEndEditing(_ textField: UITextField) {
        UIView.animate(withDuration: 0.3) {
            self.view.bounds.origin.y = 0
            self.view.layoutIfNeeded()
        }
    }

当用户单击textField时,可以调用此函数:

func textFieldDidBeginEditing(_ textField: UITextField) {
    UIView.animate(withDuration: 0.3) {
        self.logoImage.center.y = self.logoImage.center.y - 70
        self.searchBar.center.y = self.searchBar.center.y - 70
        self.view.layoutIfNeeded()
    }
}
当用户停止键入时,在不编辑之前,所有内容都将保持不变

func textFieldDidEndEditing(_ textField: UITextField) {
        UIView.animate(withDuration: 0.3) {
            self.view.bounds.origin.y = 0
            self.view.layoutIfNeeded()
        }
    }

对但是使用滚动视图更容易。试试这个是的。但是使用滚动视图更容易。试试这个我没有搜索栏!一个只有图像视图和两个文本字段和按钮!在屏幕截图下面,伙计,我把我的文本字段命名为搜索栏……没问题,伙计,顺便问一下,你能批准我的回答吗?我应用这个解决方案,但当我开始在屏幕上输入更多内容时,底部会出现黑线。objc func keyboardWillShow(发送方:NSNotification){self.view.frame.origin.y-=150}@objc func keyboardWillHide(发送方:NSNotification){self.view.frame.origin.y+=150}你能分享屏幕快照吗?我没有搜索栏!一个只有图像视图和两个文本字段和按钮!在屏幕截图下面,伙计,我把我的文本字段命名为搜索栏……没问题,伙计,顺便问一下,你能批准我的回答吗?我应用这个解决方案,但当我开始在屏幕上输入更多内容时,底部会出现黑线。objc func keyboardWillShow(发送方:NSNotification){self.view.frame.origin.y-=150}@objc func keyboardWillHide(发送方:NSNotification){self.view.frame.origin.y+=150}您能分享屏幕截图吗