SwipeRefreshLayout的高度测量

Posted 法捷耶夫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SwipeRefreshLayout的高度测量相关的知识,希望对你有一定的参考价值。

感谢此作者的分享 http://www.cnblogs.com/linjzong/p/5221604.html

若SwipeRefreshLayout的子布局为一个线性布局LinearLayout,

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
        android:fillViewport="true"
        android:background="#ff00ff">

        //黄色背景

        <android.support.v4.widget.SwipeRefreshLayout
            android:layout_width="match_parent"
            android:layout_height="fill_parent"
            android:background="#ffff00">

            //黑色背景

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:background="#000000" />
        </android.support.v4.widget.SwipeRefreshLayout>
    </ScrollView>
</LinearLayout>
>

显示结果确实这个样子的:我们设置100dp显然没起到作用

原来是子View被强制设置成了SwipeRefreshLayout的高度

 自此提示 若使用SwipeRefreshLayout有这样的需要:只需要上面一部分布局有下拉刷新的效果,SwipeRefreshLayout的高度不要使用wrap__content,

要指定固定高度,否则会被子布局填充整个屏幕。

以上是关于SwipeRefreshLayout的高度测量的主要内容,如果未能解决你的问题,请参考以下文章

SwipeRefreshLayout详解和自定义加载更多

SwipeRefreshLayout详解和自定义加载更多

Android:如何测量 ListView 的总高度 [重复]

测量图像的宽度和高度在 Chrome 和 Firefox 中返回 0,但在 Safari 中有效

4种方法来测量树的高度

表单高度和宽度的测量方式与 TextBox 高度不同