In principle RecyclerView frame you may be using built-refresh, if no such problems may occur, there will be Caton slide, trigger a refresh timing is not right.
Ideas:
Listening RecyclerView slide, when the slide to the top of the time, and then set the refresh SwipeRefreshLayout available.
Code
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
//解决mRecyclerView与mSwipeRefreshLayout在部分机型上滑动冲突
mSwipeRefreshLayout.setEnabled(recyclerView.getChildCount() == 0 || recyclerView.getChildAt(0).getTop() >= 0);
}
});
Spread
SwipeRefreshLayout nested ScrollView slide conflict
ScrollView nested RecyclerView slide Caton