gpt4 book ai didi

ios - UITextField inputView - IBActions 未触发

转载 作者:行者123 更新时间:2023-11-28 08:54:47 25 4
gpt4 key购买 nike

我想用自定义键盘替换 UITextField 的默认键盘。因此,我使用 xib 文件创建了一个 UIViewController 的新子类(另一种方法,例如单独创建两个文件并设置文件所有者也不起作用)。

然后我向 KeyboardView 添加了一个按钮并将其连接到 IBAction。之后,我将文本字段 inputView 设置为新 View ,如下所示:

override func viewDidLoad() {
let keyboardVC = KeyboardViewController()
textField.inputView = keyboardVC.view
keyboardVC.view.autoresizingMask = .FlexibleHeight
keyboardVC.delegate = textField
}

它正在工作并且显示自定义键盘,但如果我触摸按钮,则不会调用 IBAction。我的设置有什么问题? (我检查了一些例子,它们都是以同样的方式做的)。

更新:

我现在删除了 ViewController 并将 UIView 子类化。现在这些行动正在奏效。为什么它不能与 ViewController 一起使用?

最佳答案

由于没有人持有 UIViewController - 在 viewDidLoad() 结束后没有对它的引用,它从内存中释放。按下按钮时,应该响应该操作的 View Controller 不存在 -> 您仅持有 View Controller 的 View 作为 textField.inputView

关于ios - UITextField inputView - IBActions 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33354724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com