Android - 屏幕底部的位置布局始终位于前景中

时间:2014-07-11 21:13:26

标签: android android-layout

我的xml文件如下:

<LinearLayout>
    <ScrollView>
       <LinearLayout>
       </LinearLayout>
    </ScrollView>
</LinearLayout>

第一个LinearLayout有android:layout_height="match_parent",其他所有android:layout_height="wrap_content"。如何使用imageview始终在前台创建屏幕底部的布局?

3 个答案:

答案 0 :(得分:1)

最好使用相对布局。相对布局元素彼此叠加,除非您将它们相对于彼此放置。例如,如果您有两个图像视图并确定了它们,则第二个图像视图将放在第一个图像视图的顶部。

这是一个让你入门的例子:

<RelativeLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent">
     <ScrollView
      android:layout_width="match_parent"
      android:layout_height="match_parent">
         <LinearLayout
          android:layout_width="match_parent"
          android:layout_height="match_parent"/>
     </ScrollView>
     <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      android:contentDescription="@string/YOUR_CONTENT_DESC"
      android:scaleType="fitXY"
      android:src="@drawable/ic_launcher"/>
</RelativeLayout>

答案 1 :(得分:0)

您可以将线性布局的重力设置为底部。

android:layout_gravity="bottom"

创建XML文档顺序时,确实很重要。例如:

<ImageView/>
<LinearLayout/>

LinearLayout将放置在ImageView的前面。

答案 2 :(得分:0)

尝试这种方式,希望这可以帮助您解决另一个问题的替代方案。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

        </LinearLayout>
    </ScrollView>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher"
        android:adjustViewBounds="true"
        android:layout_gravity="bottom|center_horizontal"/>
</FrameLayout>