gpt4 book ai didi

Android edittext 只获取一个输入字符

转载 作者:行者123 更新时间:2023-11-30 05:11:43 25 4
gpt4 key购买 nike

我的应用程序中有一个 EditText,带有 textChangeListener,可在 afterTextChanged 上转换数字格式。

这是我在布局文件中的 EditText:

<EditText
android:id="@+id/zone_name"
android:layout_width="250dp"
android:layout_height="match_parent"
android:background="@drawable/margin_shape_table"
android:paddingStart="8sp"
android:paddingEnd="8sp"
android:singleLine="true"
android:inputType="text"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"/>

这是我的监听器代码:

zoneName.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
String char1 = s.toString();
}

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

}

@Override
public void afterTextChanged(Editable s) {
if (s.length() > 0){
zoneName.removeTextChangedListener(this);
zoneName.setText(converter.convertNumbers(s.toString()));
zoneName.addTextChangedListener(this);
zoneName.setSelection(s.length());
}else {
zoneName.setText("");
}
}
});

问题是,当我在 Asus ZenPad8.0 (android 6.0.1) 上运行它时,它只会得到第一个输入的字符,之后“Editable s”只包含第一个字符。我只在这个设备上遇到这个问题,对于其他设备,它会得到完整的输入文本。

有人对如何解决这个问题有任何建议吗?

最佳答案

错误出在 Asus ZenUI 的键盘 上,您可以添加 android:inputType="textNoSuggestions" 来避免这个问题。如需更完整的答案,请查看我对另一个问题的回答

https://stackoverflow.com/a/55933884/3880796

关于Android edittext 只获取一个输入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53608344/

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