2

我想将图像放在 View 的顶部,并将 listview 放在它的底部。什么是最好和正确的方法?

线性布局?相对布局?和哪个属性?

layout_gravity="top"?
layout_alignParentTop="true"?

请给我一个截断的代码和一个简短的描述:

layout_gravity="top" 和 android:layout_alignParentTop="true" 有什么不同?

4

1 回答 1

2

我想将图像放在 View 的顶部,并将 listview 放在它的底部。什么是最好和正确的方法?

如果您想将 a 放置在当前视图顶部的ListView下方,那么您可以同时使用这两种布局,这并没有什么真正的区别。ImageView

用于将layour_gravity子级相对放置在其父级范围内(Relativelayout没有此属性)。例如,您可以使用LinearLayout带有方向的vertical方法,它将您的两个孩子按照您的意愿堆叠在一起。由于没有意义,因此也被忽略了,因此您可以将其从布局中完全删除layout_gravity="top"verticalLinearLayout

<LinearLayout android:orientation="vertical">
    <!-- the layout_gravity is useless int this case and could be removed--> 
    <ImageView android:layout_gravity="top"/>
    <ListView />
</LinearLayout>

layout_alignParentTop是子级的放置规则RelativeLayout(仅适用于这种类型的布局!),它告诉他们将子级的顶部与父级的顶部对齐RelativeLayout。在这种情况下,要堆叠孩子,您可以:

<RelativeLayout>
    <!-- you could remove the layout_alignParentTop attribute because by default the Relativelayout will position it's children there -->
    <ImageView  android:id="@+id/imageId" android:layout_alingParentTop="true" />
    <!-- Position this child below the other -->
    <ListView android:layout_below="@id/imageId"/>
</RelativeLayout>
于 2012-08-18T11:25:43.043 回答