gpt4 book ai didi

android - Android 的 EditText : KeyListener 问题

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:51:21 27 4
gpt4 key购买 nike

EditText 组件上,我试图设置一个 KeyListener 以捕获 ENTER 键(用于表单验证)。

    text.setKeyListener(new KeyListener() {

@Override
public boolean onKeyUp(View view, Editable text, int keyCode, KeyEvent event) {
return false;
}

@Override
public boolean onKeyOther(View view, Editable text, KeyEvent event) {
return false;
}

@Override
public boolean onKeyDown(View view, Editable text, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
onKeyEnterPressedListener.onKeyEnterPressed(AKText.this);
return true;
} else {
return false;
}
}

@Override
public int getInputType() {
return 1;
}

@Override
public void clearMetaKeyState(View view, Editable content, int states) {

}
});

问题是,每当我使用键盘输入 EditText 时,所有的键都会被忽略,并且它会忽略我的击键。但是,模拟器设备上的 softpad 可以正常工作。

请问如何解决这个问题?

最佳答案

我会使用 TextWatcher改为上课:

private TextWatcher tw = new TextWatcher() {
public void afterTextChanged(Editable s){

}
public void beforeTextChanged(CharSequence s, int start, int count, int after){
// you can check for enter key here
}
public void onTextChanged (CharSequence s, int start, int before,int count) {
}
};

EditText et = (EditText) findViewById(R.id.YOUR_EDITTEXT_ID);
et.addTextChangedListener(tw);

关于android - Android 的 EditText : KeyListener 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6514592/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com