ListViewの表示されている座標(のいずれか)の値を取得しようとしています。ScrollListenerを使用しましたが、どのプロパティがこれらの値を提供するかわかりません。最終的には、これらの値を使用してスクロールの方向を計算したいと思います。誰かがこれを行う方法を知っていますか?
質問する
107 次
2 に答える
1
この方法を試してください。
listView.getLastVisiblePosition() in your onScroll listner
これは座標を提供しませんが、スクロール方向を上または下に簡単に見つけることができます。
int
これは、実行中のスクロールダウンよりも増加している場合は値を返し、 ts が減少している場合は、ユーザーが上にスクロールしていることを意味します。
于 2013-02-07T14:09:19.963 に答える
0
OnScrollListener
onScroll
問題を解決するために使用できる、上書きする必要がある関数が呼び出されます。コード スニペットを次に示します。
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 に答える