Счетчик не заполняет своего родителя

#android #android-layout #spinner

#Android #android-layout #счетчик

Вопрос:

Я использую счетчик в диалоговом окне activity with Theme. Я не могу заставить блесны заполнять родительскую ширину — они всегда имеют длину только текста — независимо от того, что я делаю. это мое определение макета.

 <?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. От этого отступа у меня болели глаза

Ответ №1:

Проблема заключалась в том, что это представление было раздуто и использовалось как один из вариантов в ViewFlipper. Код, который отсутствовал и вызвал это раздражающее поведение, заключался в добавлении flipper к его родительскому макету с правильными параметрами LayoutParams.

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

Прошу прощения за неполный вопрос — я понятия не имел, что это может быть связано с тем, как flipper был добавлен к его родительскому файлу.