繁体   English   中英

移动键盘时出现黑色区域

[英]black area when moving keyboard

我在视图的下半部分有一个文本字段,因此我正在使用下面的函数移动我的视图。 但是实际上除了键盘顶部的黑色区域外,其他所有东西看起来都像我想要的那样。如何处理呢? 这是屏幕

override func viewDidLoad() {

        NotificationCenter.default.addObserver(self, selector: #selector(ViewControllerForTextfield.keyboardWillShow(_:)), name:NSNotification.Name.UIKeyboardWillShow, object: nil);
        NotificationCenter.default.addObserver(self, selector: #selector(ViewControllerForTextfield.keyboardWillHide(_:)), name:NSNotification.Name.UIKeyboardWillHide, object: nil);
        textField.delegate = self
        super.viewDidLoad()
    }


func keyboardWillShow(_ sender: Notification) {
    if let keyboardSize = (sender.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
        if self.view.frame.origin.y == 0{
            self.view.frame.origin.y -= keyboardSize.height + 100
        }
    }

}

func keyboardWillHide(_ sender: Notification) {
    if let keyboardSize = (sender.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
        if self.view.frame.origin.y != 0{
            self.view.frame.origin.y += keyboardSize.height
        }
    }
}

}

我认为310涨幅太大。 对于自定义键盘,确定键盘的高度并不容易。 但是, 这篇文章解释了如何获得键盘的高度。

编辑:也许您还想替换从文本字段到屏幕底部的距离的差异?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM