在滚动视图布局的视图底部锚定Imageview

时间:2014-12-04 17:42:31

标签: android android-layout

我有一个滚动视图布局,里面有几个线性布局。 scrollview的最后一个视图是一个ImageView,我需要它始终显示在屏幕的底部。 视图的内容是动态的,有时屏幕确实需要滚动,有时不需要滚动。 如果需要滚动屏幕,ImageView会在底部正确显示。看看图片。这是滚动屏幕的示例,imageView是绿色条。 enter image description here

这是一个不需要滚动的屏幕示例,如您所见,图像视图显示在文本视图的正下方。

enter image description here

这是我当前的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
  >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
      >

       <ImageView
            android:id="@+id/imagen_view11"
            android:layout_width="fill_parent"
            android:layout_height="60dp"
            android:scaleType="fitXY"
            android:src="@drawable/sector1" />

        <ImageView
            android:id="@+id/imagen_view"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:scaleType="fitXY"
            android:src="@drawable/actpercusion" />

        <TextView
            android:id="@+id/titulo_label"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:gravity="center_horizontal"
            android:text="TextView TextView TextView TextView"
            android:textSize="25sp"
            android:textStyle="bold" />

<TextView
        android:id="@+id/lugar_label"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="TextView" />

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

   <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:gravity="right" >

        <ImageButton
            android:id="@+id/boton_web"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentRight="true"
            android:scaleType="fitXY"
            android:src="@drawable/web"
            android:text="Button web" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_toLeftOf="@+id/boton_web"
            android:orientation="vertical" >

            <ImageButton
                android:id="@+id/boton_mapa"
          android:layout_width="80dp"
            android:layout_height="80dp"
            android:scaleType="fitXY"
            android:src="@drawable/maps"
            android:onClick="openMapa"
                android:text="Button mapa" />
        </LinearLayout>
    </RelativeLayout>

</LinearLayout>

<TextView
    android:id="@+id/descripcion_texto"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:text="TextView" />
 <ImageView
            android:id="@+id/imagen_v"
            android:layout_width="fill_parent"
            android:layout_height="60dp"
            android:scaleType="fitXY"
            android:layout_alignParentBottom="true" 
            android:src="@drawable/sector3" />

    </LinearLayout>



</ScrollView>

我需要更改我的布局文件,以便图像视图始终显示在屏幕底部,如果需要滚动屏幕,则独立显示。 欢迎任何帮助。

1 个答案:

答案 0 :(得分:2)

您需要使用android:fillViewport

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scroller"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:fillViewport="true" >

请参阅Romain Guy撰写的blog page