在TextView Edit Swift 3.0上向上移动视图

时间:2016-10-14 23:40:04

标签: ios crash swift3

我知道这个问题有好几次,但我正在寻找一个使用Swift 3.0的实现。要清楚我有文本视图,而不是文本FIELD。

我尝试过这样的事情......

viewDidLoad()

NotificationCenter.default.addObserver(self, selector: Selector(("keyboardWillShow")), name:NSNotification.Name.UIKeyboardWillShow, object: nil);
NotificationCenter.default.addObserver(self, selector: Selector(("keyboardWillHide")), name:NSNotification.Name.UIKeyboardWillHide, object: nil);

然后我在ViewController中创建了这些方法:

func keyboardWillShow(sender: NSNotification) {
    self.view.frame.origin.y = -150
}

func keyboardWillHide(sender: NSNotification) {
    self.view.frame.origin.y = 0
}

当我选择文本视图时,我遇到了崩溃。

2 个答案:

答案 0 :(得分:2)

您需要修改添加观察者代码,如下所述。 根据Swift 3迁移指南,这是声明添加观察者通知时应遵循的新方法。

代码:

    NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)

    NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillShow, object: nil)

我已经使用带有文本视图和通知中心的演示代码进行了检查。

希望它有所帮助...

快乐的编码......

答案 1 :(得分:0)

使用https://github.com/hackiftekhar/IQKeyboardManager并且不关心键盘问题。如果您仍想实现textview的默认行为,请指定崩溃。