Android TextView не меняет размер после изменения размера текста - PullRequest
3 голосов
/ 08 января 2012

У меня есть ListView с некоторым пользовательским макетом для строки (изображение, затем две строки текста с использованием двух TextView в вертикальном LinearLayout, см. Код ниже)

Моя проблемачто, когда я динамически изменяю размер текста (в методе getView Adapter), размер текста действительно изменяется, но размер TextView, который его переносит, не меняется.

Здесьэто изображение того, что он делает, когда я устанавливаю размер на «более высокий», чем по умолчанию (картинка с 18).Несмотря на большое количество тем или вопросов, которые кажутся похожими, я не нашел решения для этого.

screen capture

Вот схема строки моего списка:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="horizontal"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:padding="4dp">

    <ImageView android:id="@+id/entries_list_item_icon"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginRight="6dp"/>

    <LinearLayout android:orientation="vertical"
              android:layout_width="0dip"
              android:layout_weight="1"
              android:layout_height="fill_parent">
        <TextView android:id="@+id/entries_list_item_name"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:gravity="center_vertical"
              android:textColor="@color/entries_list_item_name"/>
        <TextView android:id="@+id/entries_list_item_summary"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="1"
              android:singleLine="true"
              android:ellipsize="marquee"
              android:textColor="@color/entries_list_item_summary"/>
    </LinearLayout>

</LinearLayout>

Я пытался переключить высоту на 0dip, как предлагалось в другом месте, это ничего не изменило.

РЕДАКТИРОВАТЬ Сам ListView очень прост:

    <ListView android:id="@+id/entries_list"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"/>

1 Ответ

3 голосов
/ 08 января 2012

Я думаю, вам придется изменить imageview высоту на fill_parent. Imageview определяет высоту вашего макета.

<ImageView
  android:id="@+id/entries_list_item_icon"
  android:layout_width="wrap_content"
  android:layout_height="fill_parent"
  android:layout_marginRight="6dp" />
...