1. 程式人生 > >//解決SwipeRefreshLayout和RecyclerView存在滑動衝突的問題

//解決SwipeRefreshLayout和RecyclerView存在滑動衝突的問題

recyclerview.setOnScrollListener(new RecyclerView.OnScrollListener() {
    @Override
    public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
        super.onScrollStateChanged(recyclerView, newState);
        int topRowVerticalPosition =
                (recyclerView == null || recyclerView.getChildCount() == 0) ? 0 : recyclerView.getChildAt(0).getTop();
        swiperefreshLayout.setEnabled(topRowVerticalPosition >= 0);
    }

    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        super.onScrolled(recyclerView, dx, dy);
    }
});