Spinner没有填充其父级

时间:2011-05-23 10:06:55

标签: android android-layout spinner

我在主题对话框的活动中使用微调器。 我无法让旋转器填充父宽度 - 这些只是文本的长度 - 无论我做什么。这是我的布局定义。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent"  android:layout_width="match_parent" android:orientation="vertical">
        <LinearLayout android:id="@+id/weight_units"
            android:layout_width="match_parent" android:gravity="top|center_vertical|center_horizontal"
            android:orientation="horizontal" android:layout_marginBottom="3dip" android:layout_marginTop="3dip"  android:layout_height="wrap_content">
            <TextView android:layout_marginRight="3dip" android:id="@+id/spinner_lbl"
                android:text="@string/weight_units"
                android:layout_marginLeft="3dip" android:layout_height="wrap_content"
                android:layout_width="match_parent" android:layout_gravity="center_vertical|center_horizontal"  android:layout_weight="1" ></TextView>
            <Spinner android:id="@+id/weight_spinner" android:layout_height="wrap_content" android:layout_weight="1" android:layout_width="match_parent"></Spinner>
        </LinearLayout>

        <LinearLayout android:orientation="vertical"
            android:paddingTop="2dip" android:paddingBottom="2dip" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1">
            <TextView android:layout_width="match_parent"
                android:layout_height="wrap_content" android:layout_marginTop="10dip"
                android:text="@string/calc_formula_prompt" />
            <Spinner android:id="@+id/calc_spinner" android:layout_height="wrap_content" android:prompt="@string/calc_formula_prompt" android:layout_width="fill_parent"/>
        </LinearLayout>

要清楚 - 我确实希望将活动作为对话框打开,并抓住大部分屏幕 - 但是当我横向移动时 - 微调器没有拉伸到完整的父宽度。

提前致谢

1 个答案:

答案 0 :(得分:0)

问题在于这个视图被夸大并被用作ViewFlipper中的一个视图。 丢失并导致这种令人讨厌的行为的代码是使用正确的LayoutParams将鳍状肢添加到其父布局。

    flipper = new MyViewFlipper(this, gestureDetector);
    lay1.addView(flipper,new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

我为不完整的问题道歉 - 我不知道它可能与鳍状肢添加到其父母的方式有关。