gpt4 book ai didi

UITableViewController 不响应键盘

转载 作者:行者123 更新时间:2023-11-28 09:20:18 25 4
gpt4 key购买 nike

我试图让 tableview 适应 Swift 中键盘的显示。根据文档,如果 tableview 是 UITableViewController 的子类,它应该自动调整。已经在这里阅读了很多答案,只是为了确保我已经涵盖了所有内容:

  • 它是 UITableViewController 的子类

    类 SettingsController: UITableViewController

  • ViewWillAppear 没有被覆盖,所以我不需要调用 super.viewWillAppear(true)

我在静态表格 View 单元格中只有一个文本字段,但是当键盘出现时,表格 View 不会滚动。

除此之外,我尝试实现通知

NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWasShown", name: UIKeyboardDidShowNotification, object: self)

函数

func keyboardWasShown(notification: NSNotification) {
println("Keyboard shown")
}

但是这个函数永远不会被调用。

谁能帮帮我?为什么 tableview 不滚动,为什么不触发通知?

问候,

罗恩

最佳答案

我认为问题在于您将 self 作为对象传递给函数。 Self 属于 SettingsController 类型,因此当它查找带有 SettingsController 参数的名为“keyboardWasShown:”的方法时,找不到。这可以通过两种方式解决,要么更改第一行以传入 nil 值:

NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWasShown:", name: UIKeyboardDidShowNotification, object: nil)

或者改变接受 SettingsController 的方法

func keyboardWasShown(settingsController: SettingsController) {
println("Keyboard shown")
}

希望这能解决您遇到的任何问题。

关于UITableViewController 不响应键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25242513/

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