首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让UIKeyInput进行重复的deleteBackwards调用

如何让UIKeyInput进行重复的deleteBackwards调用
EN

Stack Overflow用户
提问于 2011-07-06 12:27:00
回答 2查看 1.1K关注 0票数 8

目前我正在使用UIKeyinput,但它只发送一个delteBackward事件,即使我长时间按住Delete键也是如此。当我长时间按住delete键时,如何让它向我发送多个事件调用?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-12 17:55:13

没有简单的方法可以让系统键盘自动重复。这给你留下了两个选择:

通过使用键盘上的覆盖来伪造它(请参阅@pho0)

  • Implement a
  1. 的注释,将其安装为视图或视图控制器的inputView,并实现支持自动重复的自定义协议。

如果你只需要delete键来自动重复,那么解决方案1效果很好,但是如果你需要所有的键来自动重复,覆盖代码就会变得和自定义键盘选项一样复杂。(覆盖的每个键都需要一个矩形,所以为什么不直接替换底层的键盘呢?)

解决方案2涉及一定数量的“前期”工作……可以这样做的一种方法是定义一个键帽类(类似于物理键)和一个键盘布局类。

我已经在我参与的项目中实现了这两种解决方案,但我目前使用的是解决方案2,因为我可以创建我喜欢的任何键盘。在简单的情况下,用户永远不需要知道它不是系统键盘。对于高级用户,他们可以根据自己的喜好定制键盘。

无论如何,我发现将键盘类设为哑类是有用的;它只是传达一个键已经转换为按下或转换为向上。上面的一个附加类,它决定应该采取什么操作。

在某些方面,我知道这不是你想要的答案,但我希望它能有所帮助,IDZ

票数 3
EN

Stack Overflow用户

发布于 2012-05-08 04:10:40

我见过人们做的一件事就是在键盘按钮上放一个假按钮。当有人按住它时,让计时器在每次触发时删除最后一个字母。

希望这能有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6591548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档