0

ListViewの表示されている座標(のいずれか)の値を取得しようとしています。ScrollListenerを使用しましたが、どのプロパティがこれらの値を提供するかわかりません。最終的には、これらの値を使用してスクロールの方向を計算したいと思います。誰かがこれを行う方法を知っていますか?

4

2 に答える 2

1

この方法を試してください。

listView.getLastVisiblePosition() in your onScroll listner

これは座標を提供しませんが、スクロール方向を上または下に簡単に見つけることができます。

intこれは、実行中のスクロールダウンよりも増加している場合は値を返し、 ts が減少している場合は、ユーザーが上にスクロールしていることを意味します。

于 2013-02-07T14:09:19.963 に答える
0

OnScrollListeneronScroll問題を解決するために使用できる、上書きする必要がある関数が呼び出されます。コード スニペットを次に示します。

listView.setOnScrollListener(new OnScrollListener() {

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

          if (++firstVisibleItem + visibleItemCount > totalItemCount) {
               //Reached last element in list, Do Something...
          }
     }
}

これを使用して、ユーザーが上下にスクロールしているかどうか、および座標を判断できます。firstVisibleItemリスト内の最初に表示されているアイテムの位置/座標が表示されvisibleItemCount、さらにいくつの要素が表示されているかがわかりますtotalItemCount

于 2013-02-07T14:37:32.647 に答える