从Android键盘中删除要输入的笑脸

从Android键盘中删除要输入的笑脸,android,android-layout,Android,Android Layout,我的编辑文本 其中inputType为android:inputType=“text | textCapWords” 问题是当键盘打开时,我可以输入微笑 如何从Android本机键盘禁用笑脸 任何帮助都将不胜感激 <com.google.android.material.textfield.TextInputLayout android:id="@+id/nameInputLayout" style="@style/textI

我的编辑文本

其中inputType为android:inputType=“text | textCapWords”

问题是当键盘打开时,我可以输入微笑

如何从Android本机键盘禁用笑脸

任何帮助都将不胜感激

<com.google.android.material.textfield.TextInputLayout
                android:id="@+id/nameInputLayout"
                style="@style/textInputLayout"
                android:layout_marginTop="@dimen/_30sdp"
                app:errorEnabled="true"
                app:errorTextAppearance="@style/ErrorText"
                app:hintTextAppearance="@style/HintText">

                <com.google.android.material.textfield.TextInputEditText
                    android:id="@+id/edt_user_name"
                    style="@style/editTextInputLayout"
                    android:hint="@string/enter_your_name"
                    android:imeOptions="actionNext"
                    android:inputType="text|textCapWords"
                    app:fontFamily="@font/muli_regular_font" />


</com.google.android.material.textfield.TextInputLayout>


试试这样的方法,这对我很有效

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;
        }
    }
editText.setFilters(新的InputFilter[]{new EmojiExcludeFilter()});
私有类EmojiExcludeFilter实现InputFilter{
@凌驾
公共CharSequence筛选器(CharSequence源、int开始、int结束、跨区目标、int开始、int结束){
for(int i=start;i