Я согласен с Erich WRT, использующим RelativeLayout. Однако, если вы действительно хотите использовать LinearLayout, вам просто нужно сказать ему «линейно» выравнивать объект по вертикали, а не по горизонтали. У вас там был бит (android:orientation="vertical"
), поэтому вы должны иметь возможность отбрасывать гравитацию ... это должно работать:
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon" />
<ImageView
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon" />
</LinearLayout>
Если вместо этого вы пытаетесь заставить макет занимать весь экран и иметь одно изображение вверху экрана и одно внизу, вам понадобится что-то более похожее (не проверено):
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/button1"
android:layout_height="0dip"
android:layout_weight="1"
android:src="@drawable/icon" />
<ImageView
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon" />
</LinearLayout>
В основном это говорит о том, чтобы растянуть первый, чтобы заполнить родительский элемент, оставляя достаточно места для второго, чтобы обернуть его содержимое.