如何在自定义键盘中快速制作返回按钮

Posted

技术标签:

【中文标题】如何在自定义键盘中快速制作返回按钮【英文标题】:How to make return button in custom keyboard swift 【发布时间】:2015-12-13 09:35:12 【问题描述】:

我正在使用 Swift 编写自定义键盘。我在制作返回按钮时遇到了一些问题。返回按钮应根据用户正在编写的文本字段更改标题“返回”、“完成”和“搜索”。

为此,我是这样写的。

// Syntax are not correct. I just want to explain my idea.

override fun viewDidLoad()

super.viewDidLoad()
if ((textDocumentProxy as UIKeyInput).returnKeyType == .Default)

btnReturn.addTarget("addParagraph", .TouchUpInside)
btnReturn.setTitleLabel("Return", .Normal)

else if ((textDocumentProxy as UIKeyInput).returnKeyType == .Done)

btnReturn.addTarget("DoneKey", .TouchUpInside)
btnReturn.setTitleLabel("Done", .Normal)

else if ((textDocumentProxy as UIKeyInput).returnKeyType == .Search)

btnReturn.addTarget("searchKey", .TouchUpInside)
btnReturn.setTitleLabel("Search", .Normal)

我这样做对吗?

我可以做按钮添加段落,但是当按钮标题为“完成”时我不知道如何隐藏键盘,也不知道当按钮标题为“搜索”时如何设置搜索功能。

请大家帮帮我。

【问题讨论】:

您是否尝试将键盘从您的视图中移除? 【参考方案1】:

您不需要提供此功能,因为您只是在构建键盘。

应用负责提供搜索功能或在点击返回键时关闭键盘。

【讨论】:

【参考方案2】:

隐藏键盘:

func hideKeyboard() 
    self.view.endEditing(true)

【讨论】:

我做不到。我认为 self.view.endEditing() 不适用于自定义键盘。不过,感谢您的帮助。 这会从包含 DocumentProxy 的 ViewController 中关闭活动键盘,它不会从其自己的 ViewController 中关闭键盘【参考方案3】:

使用内置方法dismissKeyboard() 在键盘的 ViewController 中隐藏键盘

斯威夫特 4:

self.dismissKeyboard()

【讨论】:

以上是关于如何在自定义键盘中快速制作返回按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何在自定义键盘中关闭键盘?

Android:在自定义键盘上添加 imageButton

在自定义数字键盘上的按键上点击播放声音

在自定义键盘扩展中检测输入对象视图类型

ios) 如何在自定义键盘上方创建建议视图

如何防止键盘出现在自定义警报视图上