私は簡単なレイアウトを持っています。以下は関連するフラグメントです。スピナーが空である限り、私が望むとおりに見えます。(実行時に)アイテムを追加すると、高さの半分のようにジャンプします。なんで?
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:layout_marginTop="10dp" >
<TableRow
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/lbl"
style="@style/Label.Plain"
android:layout_height="@dimen/button_height"
android:layout_marginRight="5dp"
android:layout_weight="0"
android:gravity="left|center_vertical" />
<Spinner
android:id="@+id/spinner"
style="@style/Spinner"
android:background="#ff0000"
android:layout_width="fill_parent"
android:layout_weight="1" />
</TableRow>
</TableLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
そして、これは「スピナー」スタイルです:
<style name="Spinner" parent="@android:style/Widget.Holo.Spinner">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">@dimen/button_height</item>
<item name="android:textSize">@dimen/spinner_text</item>
<item name="android:textColor">@color/button</item>
<item name="android:gravity">center_vertical</item>
<item name="android:padding">2dp</item>
<item name="android:maxLines">1</item>
</style>