3 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊
較晚的答案,但是如果您只想檢查ListView是否一直向下滾動(dòng),而不創(chuàng)建事件偵聽器,則可以使用以下if語句:
if (yourListView.getLastVisiblePosition() == yourListView.getAdapter().getCount() -1 &&
yourListView.getChildAt(yourListView.getChildCount() - 1).getBottom() <= yourListView.getHeight())
{
//It is scrolled all the way down here
}
首先,它檢查是否在最后一個(gè)可能的位置。然后,它檢查最后一個(gè)按鈕的底部是否與ListView的底部對齊。您可以執(zhí)行類似的操作來知道它是否始終位于頂部:
if (yourListView.getFirstVisiblePosition() == 0 &&
yourListView.getChildAt(0).getTop() >= 0)
{
//It is scrolled all the way up here
}

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
我這樣做的方式:
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE
&& (listView.getLastVisiblePosition() - listView.getHeaderViewsCount() -
listView.getFooterViewsCount()) >= (adapter.getCount() - 1)) {
// Now your listview has hit the bottom
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
}
});
- 3 回答
- 0 關(guān)注
- 507 瀏覽
添加回答
舉報(bào)