XML文件
<com.aspsine.swipetoloadlayout.SwipeToLoadLayout
android:id="@+id/swipeToLoadLayout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="5"
app:refresh_complete_to_default_scrolling_duration="500"
app:swipe_style="scale">
<include
android:id="@id/swipe_refresh_header"
layout="@layout/layout_twitter_header" />
<LinearLayout
android:id="@+id/swipe_target"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none"/>
<LinearLayout
android:id="@+id/ll_empty"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/noredpacket"
android:layout_gravity="center" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="您还没有红包记录"
android:textSize="15sp"
android:textColor="#b2b2b2"
android:layout_gravity="center"
android:layout_marginTop="32dp"/>
</LinearLayout>
</LinearLayout>
<include
android:id="@id/swipe_load_more_footer"
layout="@layout/layout_classic_footer" />
</com.aspsine.swipetoloadlayout.SwipeToLoadLayout>
在代码里重写方法
RefreshEx.fixCanNotScrollBug(swipeToLoadLayout,lvRedPacket);
RefreshEx页面
public class RefreshEx {
public static void fixCanNotScrollBug(SwipeToLoadLayout swipeToLoadLayout, AbsListView listView){
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if(totalItemCount == 0){
swipeToLoadLayout.setLoadMoreEnabled(true);
swipeToLoadLayout.setRefreshEnabled(true);
}else{
View firstVisibleItemView = view.getChildAt(0);
if (firstVisibleItem == 0 && firstVisibleItemView != null && firstVisibleItemView.getTop() == 0) {
Log.d("ListView", "##### 滚动到顶部 ######");
swipeToLoadLayout.setRefreshEnabled(true);
}else{
swipeToLoadLayout.setRefreshEnabled(false);
}
View lastVisibleItemView = view.getChildAt(view.getChildCount() - 1);
if ((firstVisibleItem + visibleItemCount) == totalItemCount && lastVisibleItemView != null && lastVisibleItemView.getBottom() == view.getHeight()) {
Log.d("ListView", "##### 滚动到底部 ######");
swipeToLoadLayout.setLoadMoreEnabled(true);
}else{
swipeToLoadLayout.setLoadMoreEnabled(false);
}
}
}
});
}
}