3

カスタム背景で EditText フィールドを作成していますが、入力テキストがフィールド自体よりも長くなります。また、テキストは 1 行である必要があります。

私の考えは、行がフィールドの最後に達したときにテキストを「左に移動」させることです。これが可能であることをいくつかのアプリケーションで見ました。

私は答えを探しましたが、この特定の問題に答えるものはありません。それらのいくつかを組み合わせた後、この方法で問題を解決しようとしました:

<EditText 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/edit_text"
        android:textColor="#FFFFFF"
        android:paddingLeft="5dp"
        android:maxLines="1"
        android:maxLength="25"
        android:scrollHorizontally="true"/>

しかし、テキストを入力して EditText フィールドの最後に到達すると、25 文字に達するまでフィールド (特に「@drawable/edit_text」) が伸び始めます。

また、layout_width を特定の値に変更すると、最後に到達するとテキストが 2 行目に移動します (maxLines がまだ 1 であっても)。

4

4 に答える 4

3

わかった。ポイントは、EditText を RelativeLayout 内に配置する必要があるということです。今それは働いています。

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/edit_text">
        <EditText
            android:layout_width="120dp"
            android:layout_height="21dp"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_margin="6dp"
            android:background="#00000000"
            android:imeOptions="actionDone"
            android:inputType="textPersonName"
            android:maxLength="20"
            android:maxLines="1"
            android:paddingLeft="2dp"
            android:textColor="#FFFFFF"/>
    </RelativeLayout>
于 2013-07-04T07:18:50.503 に答える
3

EditText を の中に入れるHorizontalScrollViewと、機能します。

            <HorizontalScrollView
                android:id="@+id/rlEmail"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:scrollHorizontally="true"
                android:layout_alignLeft="@+id/etPhone"
                android:layout_alignRight="@+id/imgBtnEdit"
                android:layout_below="@+id/etPhone" >
                <EditText
                    android:id="@+id/etEmail"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentTop="true"
                    android:ems="10"
                    android:enabled="false"
                    android:focusable="false"
                    android:text="info@friedman.com"
                    android:maxLines="1"
                    android:singleLine="true"
                    android:scrollHorizontally="true" />
            </HorizontalScrollView>
于 2015-02-20T15:15:24.927 に答える
2

追加したら動きました

android:scrollHorizontally="true"
android:singleLine="true"
android:gravity="right|center_vertical" 

<EditText
        android:background="@drawable/sk"
        android:id="@+id/ed"
        android:textSize="@dimen/sed"
        android:textColor="@color/tc"
        android:scrollHorizontally="true"
        android:singleLine="true"
        android:gravity="right|center_vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

私の編集テキストに

于 2016-08-11T23:03:51.797 に答える