我已经使用RecyclerView成功实现了刷卡刷新功能,并且工作正常。
以下是代码:
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
mSwipeRefreshLayout = (SwipyRefreshLayout) view.findViewById(getRefreshLayoutId());
mSwipeRefreshLayout.setOnRefreshListener(new SwipyRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh(SwipyRefreshLayoutDirection swipyRefreshLayoutDirection) {
doRefreshTask();
}
});
}
protected void onRefreshComplete() {
mSwipeRefreshLayout.setRefreshing(false);
completeRefresh();
}
这是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_height="wrap_content">
<android.support.v7.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_recycler"
android:scrollbars="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>
</android.support.v4.widget.SwipeRefreshLayout>
但是,如果我拉下刷新按钮并释放并且同时(在onRefreshListener触发之前)我再次拉下来,那么刷新按钮在屏幕中间停止并且什么都不做。
有谁知道如何解决这个问题? Gmail以某种方式可以禁用&#34;恶意&#34;拉下行动。
我使用的库:&#39; com.android.support:design:23.0.1&#39;
答案 0 :(得分:0)
我注意到这是支持设计库23.0.1中的一个错误,回滚到版本22.2.1不会有这个问题。