Android TextEdit расширяет край экрана при заполнении большим числом - PullRequest
1 голос
/ 26 августа 2011

У меня есть несколько текстовых правок в макете таблицы.С небольшими значениями TextEdits растягиваются до края экрана.Однако большие значения приводят к тому, что TextEdits расширяется за край экрана.Как сохранить ширину textedit до края экрана?

    <TableLayout android:layout_height="wrap_content" android:layout_width="wrap_content" android:stretchColumns="1">
        <TableRow android:baselineAligned="true" android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
            <TextView android:id="@+id/textView4" android:layout_height="wrap_content" android:text="Perm:" style="@style/PlainText" android:layout_width="wrap_content"></TextView>
            <EditText android:id="@+id/f" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
        <TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
            <TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView5" android:text="w/ repetition:" android:gravity="right"></TextView>
            <EditText android:id="@+id/e" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
        <TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
            <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Combinations:" style="@style/PlainText"></TextView>
            <EditText android:id="@+id/d" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
        <TableRow android:layout_height="wrap_content" android:layout_width="wrap_content">
            <TextView android:layout_width="wrap_content" android:layout_marginLeft="5dip" android:layout_height="wrap_content" style="@style/PlainText" android:id="@+id/textView6" android:text="w/ repetition:" android:gravity="right"></TextView>
            <EditText android:id="@+id/c" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
        <TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
            <TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="# of subsets:" style="@style/PlainText"></TextView>
            <EditText android:id="@+id/b" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
        <TableRow android:layout_height="wrap_content" android:gravity="center_vertical" android:layout_width="wrap_content">
            <TextView android:id="@+id/TextView04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pigeonhole:" style="@style/PlainText"></TextView>
            <EditText android:id="@+id/z" android:hint="0" android:scrollHorizontally="true"></EditText>
        </TableRow>
    </TableLayout>

Ответы [ 2 ]

1 голос
/ 10 апреля 2013

Ответ в итоге оказался android: shrinkColumns (#, #), а не жестким кодированием размера.комментарий от @ akand074 в ответе на комментарии.Я нашел эту ссылку, которая объясняет, почему и как это работает:

http://growingupwithandroid.blogspot.com/2010/01/how-does-tablelayout-handle-column.html#remindMeAgain

0 голосов
/ 26 августа 2011

что-то вроде этого может ограничить количество вводимых пользователем символов в тексте редактирования.

android:maxLength="10"

это ограничит избыточный поток символов.

я заметил, что некоторые из них являются числовыми полями.поэтому, используя

android:inputType="number"

или любой другой соответствующий параметр.

ОБНОВЛЕНИЕ

что-то вроде этого растянет выбранный столбец, чтобы занять оставшееся пространство

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1">
    <TableRow>
        <TextView
            android:layout_column="1"
            android:text="Open..."
            android:padding="3dip" />
        <TextView
            android:text="Ctrl-O"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>
</TableLayout>

проверьте эту ссылку для получения дополнительной информации

http://developer.android.com/resources/tutorials/views/hello-tablelayout.html

...