禁用时,editText的椭圆内容

Gyo*_*ome 2 android android-layout

我有一个布局,其中用户填充了一个EditText,然后在以后它就变得无法充当标准TextView。

问题是,椭圆大小在此EditText上永远无法使用。我希望当文本太大而无法完全显示时,在文本末尾显示“ ...”,但是我找不到任何使它起作用的方法,而且我也不知道为什么会这样。 t。

这是我的布局

<RelativeLayout
android:id="@+id/search_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_below="@+id/toolbar"
android:background="@drawable/bg_border_bot_clickable"
android:addStatesFromChildren="@+id/ic_edit"
android:animateLayoutChanges="true">

    <View
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="5dp"
        android:layout_alignParentLeft="true"
        android:background="@drawable/ic_action_search"
        android:id="@+id/ic_search" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:textColorHint="@color/text_hint"
        android:hint="@string/search_hint"
        android:id="@+id/et_search"
        android:textColor="@android:color/white"
        android:inputType="text|textCapSentences"
        android:ellipsize="end"
        android:singleLine="true"
        android:lines="1"
        android:imeOptions="actionSearch"
        android:background="@drawable/transition_rounded_rectangle"
        android:layout_toLeftOf="@+id/ic_edit"
        android:layout_toRightOf="@+id/ic_search"
        />

<View
    android:layout_width="45dp"
    android:layout_height="45dp"
    android:layout_centerVertical="true"
    android:layout_alignParentRight="true"
    android:background="@drawable/ic_edit"
    android:id="@+id/ic_edit"
    android:visibility="gone"
    android:clickable="true"/>
Run Code Online (Sandbox Code Playgroud)

关于如何做到这一点的任何想法?

Chr*_*lla 5

将以下属性添加到,EditText以用省略号包装内容。

android:scrollHorizontally="true"
android:ellipsize="end"
android:singleLine="true"
android:editable="false"
Run Code Online (Sandbox Code Playgroud)

如果您不想在XML中默认将editable设置为false,则可以通过调用来获得相同的结果setKeyListener(null)

editText.setKeyListener(null);
Run Code Online (Sandbox Code Playgroud)