当前位置: 首页 > 面试题库 >

为什么数字约束在LWUIT中的虚拟键盘上不起作用?

袁霍英
2023-03-14
问题内容

我已经测试了许多在TextField中提供数字和密码约束的方法。但是它不起作用,请参见下面的代码。

textField.setConstraint(TextField.NUMERIC | TextField.PASSWORD);
textField.setInputModeOrder(new String[]{"123"});

上面的代码应在非接触式手机上运行。但它不适用于触控手机。所以我已经设置了输入模式值VKB并将其TextField与绑定VKB,请参见以下代码。

TextField txt = new TextField(); 
txt.setConstraint(TextField.NUMERIC |TextField.PASSWORD); 
txt.setInputModeOrder(new String[]{"123"});
VirtualKeyboard vkb = new VirtualKeyboard(); 
vkb.setInputModeOrder(new String[]{VirtualKeyboard.NUMBERS_MODE});  
VirtualKeyboard.bindVirtualKeyboard(txt, vkb);

VirtualKeyboard.NUMBERS_MODE当我使用上述代码时无法正常工作。VKB像往常一样显示格式。那就是AlphaNumeric格式。为什么显示这样?


问题答案:

这是LWUIT中的错误,感谢您引起我们的注意,我将在接下来的几周内尝试对其进行修复。会更快,但是我们需要尽快飞往JavaOne。

如果要在本地尝试修复,只需在VirtualKeyboard.java中更新此方法:

public void setInputType(int inputType) {
    if((inputType & TextArea.NUMERIC) == TextArea.NUMERIC || 
            (inputType & TextArea.PHONENUMBER) == TextArea.PHONENUMBER) {
        setInputModeOrder(new String []{NUMBERS_MODE});
        return;
    }
    if((inputType & TextArea.DECIMAL) == TextArea.NUMERIC) {
        setInputModeOrder(new String []{NUMBERS_SYMBOLS_MODE});
        return;
    }
    setInputModeOrder(defaultInputModeOrder);
}


 类似资料:
  • 问题内容: 在调试pycharm中的代码时,按Ctrl + C时,我的python try / except循环似乎不会触发键盘中断。我的代码如下所示: 编辑: 我的精简代码工作似乎出现了一些问题,并且没有产生相同的错误。完整的代码可以在这里查看。我还重新整理了代码(上面的代码),并产生了相同的错误。 问题答案: 从屏幕截图中可以看出,您正在IDE中运行此代码。关于IDE的问题是,它们与正常运行并

  • 在规范中,我想模拟类: b)我可以在文档中找到关于为什么要为存根或模拟调用原始类方法的信息?

  • http://docs.oracle.com/javase/8/javafx/user-interface-tutorial/embedd.htm 有没有人在javafx应用程序中有过虚拟键盘的经验?我需要能够显示正常的键盘或数字键盘时,文本字段是聚焦的。

  • Javascript VirtualKeyboard 是一个 JavaScript 的虚拟键盘,特别适合在浏览器中的可视化编辑器中使用。支持多种语言。

  • 问题内容: 我在想, 我确定可以控制添加的类型,因此在MySQL中使用约束作为外键的动机是什么? 它会提高性能吗? 问题答案: 外键强制执行参照完整性。这些约束保证了表中具有引用表的字段的行将永远不会具有表中不存在的值。 外键不需要具有有效的关系数据库(实际上MySQL的默认存储引擎不支持FK),但是对于避免断开关系和孤立行(即参照完整性),它们绝对是必不可少的。是必需的在数据库级别实施参照完整性