1. ホーム
  2. android

[解決済み] ListViewが一番下までスクロールしているかどうか?

2022-11-20 07:03:06

質問

ListViewが一番下までスクロールされているかどうかを調べることはできますか?それは、最後のアイテムが完全に表示されていることを意味します。

どのように解決するのですか?

編集 :

私は自分のアプリケーションの1つでこの特定の主題を調査しているので、この質問の将来の読者のために拡張された答えを書くことができます。

を実装します。 OnScrollListener を実装し ListView 's onScrollListener にしておけば、正しく処理できるはずです。

例えば

private int preLast;
// Initialization stuff.
yourListView.setOnScrollListener(this);

// ... ... ...

@Override
public void onScroll(AbsListView lw, final int firstVisibleItem,
        final int visibleItemCount, final int totalItemCount)
{

    switch(lw.getId()) 
    {
        case R.id.your_list_id:     

            // Make your calculation stuff here. You have all your
            // needed info from the parameters of this function.

            // Sample calculation to determine if the last 
            // item is fully visible.
            final int lastItem = firstVisibleItem + visibleItemCount;

            if(lastItem == totalItemCount)
            {
                if(preLast!=lastItem)
                {
                    //to avoid multiple calls for last item
                    Log.d("Last", "Last");
                    preLast = lastItem;
                }
            }
    }
}