如果没有paddingTop,Android paddingBottom无法正常工作

时间:2012-09-18 06:46:29

标签: android layout scrollview padding

我目前正在使用ScrollView中包含RelativeLayout的布局。

我希望RelativeLayout与ScrollView底部相距5dp,因此它不会与我背后的背景重叠,为实现这一点,我使用的是这个XML:

<ScrollView
    android:id="@+id/scrollView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/backgroundView1"
    android:fadingEdge="none"
    android:scrollbars="none"
    android:paddingTop="5dp"
    android:paddingBottom="5dp">

    <RelativeLayout
        android:id="@+id/innerLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </RelativeLayout>
</ScrollView>

这完美无缺,但我不再需要在顶部填充。删除paddingTop行时,paddingBottom不再起作用。即使我将paddingBottom设置为100dp,它也不会对我的布局产生影响。

我尝试了paddingTop =“0dp”并且也没有解决问题,看起来paddingBottom只有在paddingTop高于0时才能工作。

如果没有paddingTop,任何人都有任何想法为什么paddingBottom不起作用?

4 个答案:

答案 0 :(得分:0)

你写了xml属性 android:layout_alignParentBottom =&#34; true&#34; 所以你的 ScrollView 总是会对齐底部

删除 android:layout_alignParentBottom =&#34; true&#34; ,然后重试。

答案 1 :(得分:0)

使用这种布局进行scrollview并根据需要进行更改..不要在scrollview中使用相对布局。 在这里你可以在图像中设置任何类型的高度,你仍然会看到底部的填充没有任何paddingtop

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/backgroundView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ScrollView
        android:id="@+id/scrollView"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="#cccccc"
        android:paddingBottom="5dp"
        android:scrollbars="none" >

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

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="700dp"
                android:background="@android:color/transparent"
                android:scaleType="fitXY"
                android:src="@drawable/image2" />
        </LinearLayout>
    </ScrollView>

</LinearLayout>

答案 2 :(得分:0)

你可以使用

    android:layout_marginTop="10dip"

    android:layout_marginBottom="20dip"

答案 3 :(得分:-1)

这是为了在顶部和底部有(5 dp)空间

<ScrollView
    android:id="@+id/scrollView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/backgroundView1"
    android:fadingEdge="none"
    android:scrollbars="none"
    android:paddingTop="5dp"
    android:paddingBottom="5dp">

    <RelativeLayout
        android:id="@+id/innerLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="5dp">
    </RelativeLayout>
</ScrollView>

这是在顶部,底部,左侧和右侧有(5 dp)空间

Notice: Undefined index: userid in C:\xampp\htdocs\attendanceradio.php on line 9

Notice: Undefined index: eventid in C:\xampp\htdocs\attendanceradio.php on line 10

Notice: Undefined index: attending in C:\xampp\htdocs\attendanceradio.php on line 11

Notice: Undefined index: attending in C:\xampp\htdocs\attendanceradio.php on line 12

Warning: mysqli_stmt_bind_result(): Number of bind variables doesn't match number of fields in prepared statement in C:\xampp\htdocs\attendanceradio.php on line 23