处理与iOS中雨燕键盘移动手势输入文本视图运动

我正在开发iOS应用和 我有一个消息视图,我要处理这种情况: - >我有一个输入视图在视图的底部,除了用户被阻止/限制发送消息的一些标准之外,需要始终可见。 - >当输入视图被聚焦时,出现键盘,我想将视图与键盘框一起移动。 - >我希望键盘以表格视图滚动的方式交互式地关闭。有人说,视图应该对键盘平移手势做出响应,并随着移动。 - >我尝试使用输入附件视图,但问题是当键盘被表视图滚动解除时,输入视图也被解散。 - >我也尝试使用willShow/willHide/willChangeFrame观察者,但与此,响应是不重要的,它不响应键盘交互解雇。 有人得到这个解决方案... 感谢您的时间。处理与iOS中雨燕键盘移动手势输入文本视图运动

回答:

夫特3+: 我有采取的视图成TextView的背景和设定的视图(前置,底部,固定的高度)该约束。创建底部约束@IBOutlet和管理,下面的代码:

class ViewController: UIViewController { 

@IBOutlet var bottomConstraint: NSLayoutConstraint!

@IBOutlet var view_TextViewBg: UIView!

override func viewDidLoad() {

super.viewDidLoad()

NotificationCenter.default.addObserver(

self,

selector: #selector(keyboardDidShow(_:)),

name: NSNotification.Name.UIKeyboardWillShow,

object: nil)

NotificationCenter.default.addObserver(

self,

selector: #selector(keyboardDidHide(_:)),

name: NSNotification.Name.UIKeyboardWillHide,

object: nil)

let tap = UITapGestureRecognizer(target: self, action: #selector(handleTap(sender:)))

// tap.delegate = self

view.addGestureRecognizer(tap)

}

func handleTap(sender: UITapGestureRecognizer? = nil) {

//dissmiss your keyboard here

}

//MARK: Keyboard show

func keyboardDidShow(_ notification: Notification) {

let params = notification.userInfo

let rect: CGRect? = (params?[UIKeyboardFrameEndUserInfoKey] as AnyObject).cgRectValue

bottomConstraint.constant = (rect?.size.height)!

}

//MARK: Keyboard hide

func keyboardDidHide(_ notification: Notification) {

bottomConstraint.constant = 0

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

}

以上是 处理与iOS中雨燕键盘移动手势输入文本视图运动 的全部内容, 来源链接: utcz.com/qa/260452.html

回到顶部