Проблема с обрезкой текста в Android с помощью EditView внутри TableLayout - PullRequest
4 голосов
/ 15 ноября 2010

У меня есть небольшая проблема с отсечкой, которую я не смог решить, используя представление EditText в TableRow.Что бы я ни пытался, представление EditText либо обрезается (прикрепленный снимок экрана), либо, если я устанавливаю shrinkColumns на 0 или 1, текст метки исчезает (и представление EditText занимает всю ширину).Макет выглядит следующим образом:

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

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

    <TableRow android:orientation="horizontal"
    android:layout_width="fill_parent" android:layout_height="wrap_content">

      <TextView android:paddingRight="10dip" android:layout_column="1"
      android:text="Label Text" />
      <EditText android:text="Very long text that makes the text view go on clipping frenzy"
      android:layout_width="wrap_content" android:layout_height="wrap_content" />

    </TableRow>

  </TableLayout>

</LinearLayout>

Я пробовал его на эмуляторе 2.2, работающем на QVGA и HVGA, на HTC Hero на 2.1 и на Wildfire на 2.1.Я также поиграл с атрибутом clipToPadding, который, кажется, не помогает в моем случае.Та же проблема возникает, если я задаю атрибут hint с длинным текстом и оставляю текстовое значение пустым.

Поскольку я не делаю ничего особенно сложного, я подозреваю простую ошибку на моей стороне.Любые идеи, советы или рекомендации высоко ценятся.

Приветствия!

alt text

Ответы [ 2 ]

7 голосов
/ 15 ноября 2010

Установите android: shrinkColumns = "1" в TableLayout и удалите android: layout_column = "1" из TextView.

1 голос
/ 15 ноября 2010

Добавьте android: layout_weight = "1", в ваш EditText, для его решения потребовалось время ..........

Но не знаю причину этого .......

...