是否可以为应用中的所有键盘添加完成键?

时间:2017-03-14 19:56:25

标签: ios keyboard resignfirstresponder

是否可以在iOS应用中为所有键盘添加一个取消键盘的完成或取消键?有几篇帖子询问如何通过取消或完成按钮关闭键盘,但solutions基于field by field

是否存在全局添加此功能的解决方案,因此不需要为应用程序中的每个文本字段/区域复制代码?

3 个答案:

答案 0 :(得分:1)

就像@silentBob在his answer中所说的那样,文本字段的inputAccessoryView是当文本字段是第一个响应者时显示在键盘正上方的视图。如果您不想在UITextField上编写扩展名来覆盖-inputAccessoryView方法,您还可以创建UITextField的子类来执行相同操作,这样可以更轻松地确定将要调用哪种方法。您还可以拥有多个UITextField子类来自定义显示哪个按钮。如果故事板中有文本字段,则只需将类更改为自定义子类,因此,当您必须完成并进行这些更改时,您不必在代码中执行此操作。

答案 1 :(得分:0)

是的,你可以为UITextField类添加一个扩展,它应该添加一个带有Done和Cancel动作的UIToolbar作为UITextField inputAccessoryView。

答案 2 :(得分:0)

那么,在这种情况下,您必须自定义键盘,构建自己的键盘并根据键盘中的键执行任何操作。