Ruc*_*hir 8 android android-softkeyboard emoji android-viewtreeobserver
我想以编程方式隐藏键盘上的表情符号和自动建议.它适用于某些Android设备,但不适用于所有设备.这是隐藏自动建议的代码:
txtSingupemail.setInputType(InputType.TYPE_TEXT_VARIATION_FILTER | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS
|InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
txtSignuppwd.setInputType(InputType.TYPE_TEXT_VARIATION_FILTER | InputType.TYPE_TEXT_VARIATION_PASSWORD);
txtSignuppwd.setTransformationMethod(PasswordTransformationMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)
这是我的UI的快照:
这是用户单击signIn按钮时的布局.当用户点击标记为红色的左下角图标时,由于表情符号作为建议,键盘高度会增加.
见下面的快照:
有没有办法以编程方式隐藏键盘上的那些顶级表情符号?
Anj*_*tix 19
试试这个对我有用
editText.setFilters(new InputFilter[]{new EmojiExcludeFilter()});
private class EmojiExcludeFilter implements InputFilter {
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
for (int i = start; i < end; i++) {
int type = Character.getType(source.charAt(i));
if (type == Character.SURROGATE || type == Character.OTHER_SYMBOL) {
return "";
}
}
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
Android 输入法编辑器(又称软键盘)有数百个(如果不是数千个)。
没有人必须提供表情符号。欢迎那些愿意的人随时随地提供他们想要的服务。
输入法编辑器不需要遵守您在EditText
. 因此,输入法编辑器不需要提供任何阻止表情符号输入的方法。而且,即使有些确实提供了这种能力,其他人也可能不会,而那些提供的可能会通过不同的标志来实现。
键盘上是否有表情符号选项由键盘开发人员和用户(选择要使用的键盘的用户)决定。你没有投票权。
由于据我所知,表情符号只是 Unicode 字符,并且您应该在其他地方支持 Unicode 字符(例如中文字形),因此尚不清楚您必须避免使用表情符号的技术原因。TextWatcher
话虽这么说,如果您反对表情符号,欢迎您尝试将它们从输入的文本中过滤掉(例如,使用)。
归档时间: |
|
查看次数: |
9719 次 |
最近记录: |