1

在我的应用程序中,我有六个编辑文本。我将它们分组为两个线性布局,3 个线性布局。它应该看起来像这样:

|编辑文本1|编辑文本4|

|编辑文本2|编辑文本5|

|编辑文本3|编辑文本6|

我要编辑的文本总是相同的大小。当用户开始在字段中键入内容时,就会出现问题。如果文本太长...编辑是文本正在调整大小。有焦点的会变大,同一横排的会变小。

如何防止这种情况?我想编辑文本保持相同大小...如果文本太长...我只需要滚动它并跟随文本光标。

怎么做?天呐!

这里有一些代码:

 <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:orientation="vertical"
        android:weightSum="3" >

        <EditText
            android:id="@+id/blackPlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="5dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/black_name_selector"
            android:hint="@string/black"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@drawable/player_name_textcolor"
            android:textColorHint="@drawable/player_name_textcolor" />

        <EditText
            android:id="@+id/redPlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="5dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/red_name_selector"
            android:hint="@string/red"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@drawable/player_name_textcolor"
            android:textColorHint="@drawable/player_name_textcolor" />

        <EditText
            android:id="@+id/whitePlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="5dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/white_name_selector"
            android:hint="@string/white"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@color/black"
            android:textColorHint="@color/black" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:orientation="vertical"
        android:weightSum="3" >

        <EditText
            android:id="@+id/bluePlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/blue_name_selector"
            android:hint="@string/blue"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@drawable/player_name_textcolor"
            android:textColorHint="@drawable/player_name_textcolor" />

        <EditText
            android:id="@+id/greenPlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/green_name_selector"
            android:hint="@string/green"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@drawable/player_name_textcolor"
            android:textColorHint="@drawable/player_name_textcolor" />

        <EditText
            android:id="@+id/yellowPlayerName"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:layout_weight="1"
            android:background="@drawable/yellow_name_selector"
            android:hint="@string/yellow"
            android:inputType="textPersonName"
            android:maxLength="12"
            android:singleLine="true"
            android:textColor="@color/black"
            android:textColorHint="@color/black" />
    </LinearLayout>
</LinearLayout>
4

2 回答 2

2

对于每个编辑文本,将它们的 layout_width 设置为 0dp 并将 layout_weight 设置为 1

<EditText
    android:layout_width="0dp"
    android:layout_weight="1"
    ... />
于 2012-05-28T19:01:23.620 回答
0

尝试使用TableLayout

<TableLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TableRow>
        <EditText ...>
        <EditText ...>
        <EditText ...>
    </TableRow>

    <TableRow>
        <EditText ...>
        <EditText ...>
        <EditText ...>
    </TableRow>
</TableLayout>
于 2012-05-28T18:53:36.167 回答