Android пользовательский спиннер - PullRequest
0 голосов
/ 22 февраля 2012

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

Моя проблема в том, что настраиваемое представление для выбранного в данный момент элемента всегда имеет ширину, по крайней мере, такую ​​же ширину, как самый длинный элемент в списке счетчиков, и оно оставляет значительный зазор в левой части моего настраиваемого представления. Если я выберу самый длинный предмет из прядильщика, пропасть исчезнет. Я пробовал Android: gravity = "left" для моего пользовательского просмотра. Также обратите внимание, что это только кажется, проблема с Android 3.0+.

This shows the gap when a short spinner entry is selected

Notice no gap is present between the icon and folder name

Вот код для моего пользовательского вида счетчика:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/folder_detail" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_width="wrap_content">

<TextView android:text="Folder Name" 
    android:id="@+id/folder_name" android:textColor="#ffffff"
    android:layout_width="wrap_content" android:textSize="16sp"
    android:textStyle="bold"
    android:layout_height="wrap_content" android:layout_marginTop="0dp">
</TextView>

    <TextView android:id="@+id/folder_count" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="13sp"  android:text="(0) " android:textColor="@color/light_blue" android:layout_marginLeft="2dp"/>


<ImageView android:id="@+id/icon" android:src="@android:drawable/arrow_down_float" 
    android:layout_marginRight="1dp" android:scaleType="fitXY"
    android:layout_gravity="bottom" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
 </LinearLayout> 

1 Ответ

2 голосов
/ 22 февраля 2012

Это намеренно.Он предотвращает резкое изменение размера счетчика при изменении выделения.

Вы не должны включать стрелку как часть представления элемента;это обычно включается как часть фонового 9-патча самого блесны.Настройка силы тяжести на самом счетчике управляет выравниванием вида выбранного элемента внутри счетчика.Тема Holo выравнивает ее по левому краю, а унаследованные темы - по центру.

...