【问题标题】:How to catch pressing "Done" or similar button on soft keyboard in AS3如何在 AS3 的软键盘上捕捉按下“完成”或类似按钮
【发布时间】:2015-11-15 12:42:07
【问题描述】:

我在 Java 语言中找到了许多解决方案,但我找不到 AS3(AIR 应用程序)的答案。 Adobe 帮助中也没有解决方案。我正在使用StageText 并且需要在用户按下“完成”按钮(或returnKeyLabel 定义的任何其他按钮时捕获事件。

有什么建议吗?我会很感激的。

【问题讨论】:

    标签: actionscript-3 air event-handling soft-keyboard


    【解决方案1】:

    本机文本字段上的软键盘事件与使用基于 Flash 的 TextField(或此类)不同,因为它是在正常的 DisplayList 层次结构之外创建的,因此没有可用的相同事件处理。

    您要查找的事件是 enter,将 EventListener 附加到该事件上,您可以捕获您的“完成”。

    否则,您需要考虑使用“基于文本字段的皮肤”,以便捕获每个 keyDownkeyUp,并在事件处理程序中过滤并仅对您感兴趣的键做出反应。

    要确定用户何时使用软键盘,您可以 侦听文本输入控件上的 FlexEvent.ENTER 事件。这 当按下返回键时,控件会调度此事件。经过 监听输入事件,可以进行验证,改变 聚焦,或对最近输入的文本进行其他操作。

    在某些情况下,不会分派 enter 事件。这个限制 最后一次使用软键盘时出现在 Android 设备上 视图上的文本输入控件。要解决此问题,请将 returnKeyLabel 属性在最后一个文本输入上进行、下一步或搜索 控制视图。

    http://help.adobe.com/en_US/flex/mobileapps/WS82181550ec4a666a39bafe0312d9a274c00-8000.html#WS19f279b149e7481c-51e256961331cc2eae5-8000

    【讨论】:

    • 是的,我认为这是一个答案......谢谢......会检查它
    猜你喜欢
    • 2011-03-03
    • 1970-01-01
    • 2013-05-15
    • 2012-09-30
    • 1970-01-01
    • 2013-01-09
    • 2014-09-27
    • 1970-01-01
    • 2013-02-25
    相关资源
    最近更新 更多