SwipeRefreshLayout 中 ListView 的填充

Padding of ListView in SwipeRefreshLayout

我在 SwipeRefreshLayout 中使用了 ListView。只有当 ListView 填充是左右的时,刷新才能正常工作。一旦我设置了 topPadding 或 bottomPadding,刷新就消失了。

XML:

<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swipe_refresh_layout"
android:layout_width="match_parent"
android:layout_below="@+id/toolBar"
android:layout_height="match_parent"
app:srl_direction="both">

<ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:divider="@android:color/transparent"
    android:dividerHeight="@dimen/five_dp"
    android:listSelector="@color/transparent_color"
    android:scrollbars="none"
    android:paddingLeft="@dimen/five_dp"
    android:paddingRight="@dimen/five_dp"
    android:clipToPadding="false"
    android:scrollbarStyle="outsideOverlay"/>

</android.support.v4.widget.SwipeRefreshLayout>

现在列表中的第一项粘在工具栏上,因此需要填充。用CardView我试过了,也没接触到。

如何解决,告诉我?

这对我有帮助。

if (position == 0){
        convertView.setPadding(0,8,0,0);
} else if (position == getCount() - 1){
        convertView.setPadding(0,0,0,8);
} else {
        convertView.setPadding(0,0,0,0);
}