- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试 ScrollView (以防止键盘隐藏文本字段),但我似乎无法让键盘通知正常运行。
此代码基于 Apple 的文档(请参阅 here)。
首先,我们在 UIViewController
子类的 viewDidLoad()
中添加监听器。
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("keyboardWasShown"), name: UIKeyboardDidShowNotification, object: nil)
当事件触发时,它会立即崩溃并显示 unrecognized selector
错误消息,甚至不会打印到控制台:
func keyboardWasShown(notification: NSNotification) {
println("Keyboard will be SHOWN")
}
但是如果没有参数,我会在控制台中看到“Keyboard will be SHOWN”。
func keyboardWasShown() {
println("Keyboard will be SHOWN")
}
我做错了什么?
最佳答案
那是因为您使用的选择器没有指定它应该通知的方法有一个参数。
试试这个:
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("keyboardWasShown:"), name: UIKeyboardDidShowNotification, object: nil)
(注意选择器中的 :
。)
参见 Objective-C: Calling selectors with multiple arguments (这在 Swift 中仍然适用)。
关于ios - Xcode 6 - UIKeyboardDidShowNotification 无法识别的选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28756310/
因为键盘在出现时隐藏了文本字段,所以我实现了 a solution为了这。现在我还内置了用户点击键盘的下一个按钮并直接跳转到下一个文本字段(字段之间的制表符)的可能性。 现在的问题是,如果我只使用 b
我已经实现了滚动功能,其中文本字段不会从键盘隐藏。因此,我正在使用 UIKeyboardDidShowNotification 和 UIKeyboardWillHideNotification,滚动发
在我的 UIViewController 中,底部有两个 UITextField。所以在键盘上出现我正在尝试移动到上面。下面是我处理键盘的代码 override func viewWillAppear
我需要知道是否连接了外接键盘。我熟悉使用 NSNotificationCenter 并获取 UIKeyboardDidShowNotification 事件来确定是否显示了虚拟键盘。我遇到的问题是当连
下面的代码(抱歉太长了)在 iOS 4.3(也可能是其他版本)下显示了一个奇怪的行为。在这个例子中,有三个 UITextField具有三个不同大小的键盘。如果您开始编辑一个文本字段,然后触摸“返回”关
每当键盘出现/更改时,我都试图将 UITextView 移动到键盘上方。假设我显示英文键盘,然后直接切换到中文键盘(比标准英文键盘高)。在这种情况下,我的 TextView 总是显得太高(肉眼看来,
我有一个包含文本字段的 View Controller (UICollectionView)。在这个 Controller 中,我监听 UIKeyboardDidShowNotification :s
我正在尝试 ScrollView (以防止键盘隐藏文本字段),但我似乎无法让键盘通知正常运行。 此代码基于 Apple 的文档(请参阅 here)。 首先,我们在 UIViewController 子
我需要知道当前的键盘类型。我正在设置一个实例变量 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 但是,测试表明,由于通知的异
我有一个 UIView,里面有几个 UITextField。我已经为 UIKeyboardDidShowNotification 注册了选择器。当我触摸该字段时,将调用选择器并显示键盘。如果我不调用下
我是一名优秀的程序员,十分优秀!