// 监听键盘弹出通知
NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillShow(notification:)), name:UIResponder.keyboardWillShowNotification,object: nil)
// 监听键盘隐藏通知
NotificationCenter.default.addObserver(self,selector: #selector(keyboardWillHide(notification:)),name: UIResponder.keyboardWillHideNotification, object: nil)
// 键盘显示
@objc func keyboardWillShow(notification: Notification) {
print("键盘将要出现")
}
// 键盘隐藏
@objc func keyboardWillHide(notification: Notification) {
print("键盘将要隐藏")
}
// 移除通知
deinit {
NotificationCenter.default.removeObserver(self)
}
其他:
忽略具有默认值的参数的外部参数名
当函数(或者方法)的参数具有默认值时,Swift自动为该参数提供与参数名一致的默认外部参数名,因此在进行函数调用的时候,要提供默认参数名,可以使用下划线进行忽略默认外部参数名(但是不推荐忽略外部参数名,这主要是为了调用的时候可以方便地知道每个参数的含义)。
@obj
使用@objc修饰后的类型,可以直接供Objective-C调用