Android上的Codename One TextField.addDataChangedListener

时间:2016-12-06 13:48:04

标签: android codenameone

我有一个简单的程序,它有一个TextField。

在TextField上我添加了一个addDataChangedListener。

使用模拟器,每次按下键时都会调用addDataChangedListener。但是,一旦安装在Android设备上,此功能就会停止。

由于

2 个答案:

答案 0 :(得分:1)

将您的代码与此进行比较。这适用于Android和iOS

findTaCount(f).addDataChangedListener(new DataChangedListener() { public void dataChanged(int type, int index) { //do your action/validations } }); 其中findTaCount是我的文本域。

请记住添加f(虽然可选但很好)

祝你好运!

更新: 我在beforeXXForm()方法中添加了它。

答案 1 :(得分:0)

我发现问题是(可能)是Codename One无法识别Enter键(键码13)

form.addKeyListener(48, (ActionListener) (ActionEvent evt) -> {
        System.out.println("0");
    });
form.addKeyListener(13, (ActionListener) (ActionEvent evt) -> {
        System.out.println("Enter");
    });

按0输出“0”,但按Enter键不执行任何操作...

当您按Enter键时,模拟器刷新页面,因此给出了textField接受Enter输入的错觉。