繁体   English   中英

Android的滚动视图底部消失

[英]android the bottom of the scrollview disappear

我正在使用scrollview制作一个android应用程序,并且在scrollview内有一个relativelayout,并且它们两个都有背景,并且效果很好,但是当我尝试通过使用marginTop和Bottom在scrollview和relativelayout之间腾出空间时,滚动视图消失。

<?xml version="1.0" encoding="utf-8"?>


 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="400dp"
    android:layout_height="fill_parent"
    android:background="@drawable/bg"

    >

 <RelativeLayout
        android:layout_width="330dp"
        android:layout_height="730dp"
        android:layout_marginLeft="26dp"
        android:layout_marginRight="26dp"
        android:layout_marginTop="26dp"
        android:layout_marginBottom="26dp"
        android:background="@drawable/bg2"

        >


<Button
    android:id="@+id/button1"
    android:layout_width="100dp"
    android:layout_height="30dp" />


<Button
    android:id="@+id/button2"
    android:layout_width="100dp"
    android:layout_height="30dp" />

<Button
    android:id="@+id/button3"
    android:layout_width="100dp"
    android:layout_height="30dp" />


  </RelativeLayout>       

   </ScrollView>

当我运行应用程序时,我想要这样:

在此处输入图片说明

但我明白了,我无法查看底部:

在此处输入图片说明

在滚动视图中使用此命令:

android:fillViewport="true"

并在RelativeLayout中:

android:adjustViewBounds="true"

请将此行添加到视图的XML文件中的<ScrollView></ScrollView>标记中。

android:padding="15dp"

它将解决您的问题。

 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#15375e"

    >

 <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="30dp"
        android:background="#000000"

        >


<Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:layout_margin="10dp"
    android:text="1" />


<Button
    android:id="@+id/button2"
    android:layout_width="match_parent"
    android:layout_below="@+id/button1"
    android:layout_height="40dp"
    android:layout_margin="10dp"
    android:text="2" />

<Button
    android:id="@+id/button3"
    android:layout_width="match_parent"
    android:layout_below="@+id/button2"
    android:layout_height="40dp" 
    android:layout_margin="10dp"
    android:text="3"/>

<Button
    android:id="@+id/button4"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:layout_margin="10dp"
    android:layout_below="@+id/button3"
    android:text="4" />


<Button
    android:id="@+id/button5"
    android:layout_width="match_parent"
    android:layout_below="@+id/button4"
    android:layout_height="40dp"
    android:layout_margin="10dp"
    android:text="5" />

<Button
    android:id="@+id/button6"
    android:layout_width="match_parent"
    android:layout_below="@+id/button5"
    android:layout_height="40dp" 
    android:layout_margin="10dp"
    android:text="6"/>


  </RelativeLayout>       

   </ScrollView>

如果使用上面的代码,您将获得如下输出 这个 希望这对您有所帮助。

我刚刚偶然发现了这个问题并找到了解决方案。

看来,如果在scrollview内为布局设置了底部边距,则它的行为可能不符合预期。 作为解决方案,您可以为该元素设置填充而不是空白。 如果您希望背景占据整个屏幕,则可以在scrollview本身上进行设置。

例:

<?xml version="1.0" encoding="utf-8"?>

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:orientation="vertical">

            <!--Your elements go here-->

    </LinearLayout>

</ScrollView>

希望这对某人有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM