我有一个垂直的LinearLayout。我想在顶部布置1个ImageView,在LinearLayout的底部布置1个ImageView。我尝试在每个ImageView中放置'android:gravity =“top”'和'android:gravity =“bottom”',但两个ImageView都出现在LinearLayout的顶部。有办法解决吗?
谢谢。
<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"
android:gravity="top" />
<ImageView
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:gravity="bottom" />
</LinearLayout>
答案 0 :(得分:2)
最简单的方法是使用RelativeLayout
。将LinearLayout
替换为RelativeLayout
,将第一个ImageView
更改为使用android:layout_alignParentTop="true"
,将第二个更改为使用android:layout_alignParentBottom="true"
。
答案 1 :(得分:0)
我同意使用RelativeLayout的Erich WRT。但是,如果你想使用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>
这基本上告诉它伸展第一个填充父母,同时为第二个留下足够的空间来包装它的内容。