refreshLayout 和 滑动控件的冲突解决

listView.setOnScrollListener(new OnScrollListener() {
     
    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {
    }
     
    @Override
    public void onScroll(AbsListView view, int firstVisibleItem,
            int visibleItemCount, int totalItemCount) {
        boolean enable = false;
        if(listView != null && listView.getChildCount() > 0){
            // check if the first item of the list is visible
            boolean firstItemVisible = listView.getFirstVisiblePosition() == 0;
            // check if the top of the first item is visible
            boolean topOfFirstItemVisible = listView.getChildAt(0).getTop() == 0;
            // enabling or disabling the refresh layout
            enable = firstItemVisible && topOfFirstItemVisible;
        }
        swipeRefreshLayout.setEnabled(enable);
    }
});
posted @ 2015-12-17 11:57  Alter  阅读(351)  评论(0编辑  收藏  举报