如何避免在 android 键盘中显示像 Ä 这样的字符
How to avoid showing characters like Ä in android keyboard
我遇到了一个问题,我的一位用户在编辑文本中输入了像 Ä 这样的字符,而我正在根据该数据准备一个 XML。由于编码问题,我无法从这些字符中准备有效的 XML。无论如何我可以阻止用户输入此类字符,或者我可以从 android 默认键盘本身隐藏这些字符吗?
此致
在您的编辑文本中隐藏建议字符串。
android:inputType="textFilter"
您可以限制用户只能在编辑文本中输入特定字符,如下所示,
<EditText
android:id="@+id/YourEdittextId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textNoSuggestions"
android:privateImeOptions="nm"
android:digits="0123456789 abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ" />
以上代码限制用户只能输入英文数字、字母和space
在我遇到同样问题的前几天,我通过创建以下方法解决了这个问题。
public static String stripSpecialUTFChars(String string) {
return string.replaceAll("\u0080", "");
}
请将您的字符串传递给上述方法并像下面这样使用它
textView.setText(Html.fromHtml(stripSpecialUTFChars(yourString)));
实际上这个问题是由于 UTF 字符引起的。
我遇到了一个问题,我的一位用户在编辑文本中输入了像 Ä 这样的字符,而我正在根据该数据准备一个 XML。由于编码问题,我无法从这些字符中准备有效的 XML。无论如何我可以阻止用户输入此类字符,或者我可以从 android 默认键盘本身隐藏这些字符吗?
此致
在您的编辑文本中隐藏建议字符串。
android:inputType="textFilter"
您可以限制用户只能在编辑文本中输入特定字符,如下所示,
<EditText
android:id="@+id/YourEdittextId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textNoSuggestions"
android:privateImeOptions="nm"
android:digits="0123456789 abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ" />
以上代码限制用户只能输入英文数字、字母和space
在我遇到同样问题的前几天,我通过创建以下方法解决了这个问题。
public static String stripSpecialUTFChars(String string) {
return string.replaceAll("\u0080", "");
}
请将您的字符串传递给上述方法并像下面这样使用它
textView.setText(Html.fromHtml(stripSpecialUTFChars(yourString)));
实际上这个问题是由于 UTF 字符引起的。