pengjianbo / LoadingViewFinal

android下拉刷新/加载更多组件库
286 stars 80 forks source link

setHasLoadMore()的逻辑有问题 #4

Open notHide opened 8 years ago

notHide commented 8 years ago
public void setHasLoadMore(boolean hasLoadMore) {
        mHasLoadMore = hasLoadMore;

        if (!mHasLoadMore) {
            showNoMoreUI();
            if(mNoLoadMoreHideView) {
                removeFooterView(mLoadMoreView.getFooterView());
                mAddLoadMoreFooterFlag = false;
            }
        } else {
            if(!mAddLoadMoreFooterFlag) {
                mAddLoadMoreFooterFlag = true;
                addFooterView(mLoadMoreView.getFooterView());
            }
            showNormalUI();
        }
    }

如果加载完第一页之后就没有更多数据了,然后调用一次setHasLoadMore(false),此时的预期应该是底部显示『没有更多了』,但是按照上面的逻辑会无法显示底部。

liuyu1212120 commented 6 years ago

public void setHasLoadMore(boolean hasLoadMore) { mHasLoadMore = hasLoadMore; if (!mHasLoadMore) { // 没有更多 if(mNoLoadMoreHideView){ // showNoMoreUI(); removeFooterView(mLoadMoreView.getFooterView()); mAddLoadMoreFooterFlag = false; }else { if(!mAddLoadMoreFooterFlag) { mAddLoadMoreFooterFlag = true; addFooterView(mLoadMoreView.getFooterView()); } showNoMoreUI(); } } else { if(!mAddLoadMoreFooterFlag) { mAddLoadMoreFooterFlag = true; addFooterView(mLoadMoreView.getFooterView()); } showNormalUI(); } }

liuyu1212120 commented 6 years ago

这样改 就可以了