gpt4 book ai didi

java - Android 中的 KeyReleased 等效项

转载 作者:行者123 更新时间:2023-12-01 16:33:08 24 4
gpt4 key购买 nike

在 PC 上,我可以为 JTextField 添加 onKeyListener 来监听 keyReleased 事件。在 Android 上,我使用了 addTextChangedListener。

我的 Android 应用程序中有两个 EditText 字段。编辑其中一个会影响另一个。这将导致程序因堆栈溢出错误而失败。

如何监听手机键盘而不是 EditText 字段中的更改?我不希望程序调用监听器,因为监听器会导致无限循环。

最佳答案

附加一个 onFocusChangedListener 并在 EditText 获得焦点时添加 TextChangedListener 并在失去焦点时将其删除。像这样的事情:

 EditText1.setOnFocusChangeListener(new OnFocusChangeListener() {

public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus){
((EditText) v).addTextChangedListener(new TextWatcher() {

public void onTextChanged(CharSequence s, int start, int before, int count) {
//

}

public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
//

}

public void afterTextChanged(Editable s) {
// affect EditText2

}
});

}
if(!hasFocus){
((EditText) v).removeTextChangedListener();
}
}
});

}
});

EditText2 相同

关于java - Android 中的 KeyReleased 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12436105/

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