【发布时间】:2018-05-28 12:37:50
【问题描述】:
关注此线程(及其他)
A Swift example of Custom Views for Data Input (custom in-app keyboard)
我已经从应用中的 nib 构建了一个自定义输入视图。
但是,我想在自定义键盘扩展中实现它。我想让用户直接在自定义键盘中搜索内容。
不确定它是否与响应者链或 UIInputViewController vs UIViewController 或什么有关。
这里是 KeyboardViewController,如果需要会发布更多。 任何建议都会很棒。
键盘构建良好,但是当我单击 UITextField 时,没有任何反应。光标开始闪烁,但笔尖从未出现。
import UIKit
class KeyboardViewController: UIInputViewController, KeyboardDelegate {
@IBOutlet weak var textField: UITextField!
@IBOutlet var nextKeyboardButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
let keyboardView = Keyboard(frame: CGRect(x: 0, y: 0, width: 0, height: 300))
keyboardView.delegate = self // the view controller will be notified by the keyboard whenever a key is tapped
// replace system keyboard with custom keyboard
textField.inputView = keyboardView
}
// required method for keyboard delegate protocol
func keyWasTapped(character: String) {
textField.insertText(character)
}
func keyDone() {
view.endEditing(true)
}
func backspace() {
textField.deleteBackward()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated
}
}
【问题讨论】:
标签: ios swift keyboard uitextfield