如何从Android的EditText字段中删除下划线?

San*_*ana 35 android android-edittext

每当在EditText框中输入一个单词时,我总是会在键入的单词下面看到下划线.但是当我在那个词之后按空格时,我不再看到下划线.

我的要求是在用户输入消息时删除该下划线.

添加了截图,我们看到史密斯有下划线.但我不希望这种情况发生.

下面是我用于AlertDialog框的xml.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">

<TextView 
    android:id="@+id/name_view"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_marginLeft="20dip"
    android:layout_marginRight="20dip"
    android:text="@string/alert_dialog_name"
    android:gravity="left"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/username_edit"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:layout_marginLeft="20dip"
    android:layout_marginRight="20dip"
    android:scrollHorizontally="true"
    android:autoText="false"
    android:inputType="textPersonName"
    android:capitalize="none"
    android:gravity="fill_horizontal"
    android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

sgi*_*bly 61

android:inputType="textNoSuggestions"

  • 这完全解决了我的问题. (2认同)

n00*_*mer 18

有一个函数可以删除任何组合状态.我想如果你在每次用户输入后调用它,你就不会看到下划线.我在用户完成输入后使用它来获取整个textView的绘图缓存(我需要没有下划线).它的

someTextView.clearComposingText();
Run Code Online (Sandbox Code Playgroud)


Yon*_*lan 11

您不必使用任何逻辑来删除下划线 - 只要在要使用该值时调用getText().toString().它不包括特殊格式或任何东西.


Yog*_*thi 11

接受的答案没有给出解决方案,而其他一些用户给出了答案,但没有人给出完整的anser,所以这就是为什么我在这里写的工作解决方案.

如果要删除下划线,则只需添加以下代码即可.

XML

android:inputType="textNoSuggestions"
Run Code Online (Sandbox Code Playgroud)

Java的

EditText ed;
ed = findViewById(yourId);
ed.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
Run Code Online (Sandbox Code Playgroud)

如果要设置多个输入类型,

ed.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
Run Code Online (Sandbox Code Playgroud)

可能以上信息对他人有帮助.


小智 5

对此的最佳解决方案是添加您的EditText

 android:inputType="textMultiLine|textVisiblePassword"
Run Code Online (Sandbox Code Playgroud)