0

次のようにリストビューのスクロール動作をオーバーライドしました。

myListView.setOnScrollListener(new OnScrollListener() {

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem,
                    int visibleItemCount, int totalItemCount) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {

                 if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {


                    }

            }

        });

スクロールが完了したときに、最も近いアイテムの位置にスクロールする最良の方法を教えてください。(たとえば、顧客は上下にスクロールしています)。たとえば、mylist.SmoothScrollToPosition() を使用しようとしましたが、Android 2.2 を使用している最後まで 1 つずつスクロールします

ありがとうございました

4

2 に答える 2

0

未テスト!

スクロール状態がフリング/タッチからアイドルに切り替わると、AbsListView で最初に表示されるアイテムを検出できます。smoothScrollToPosition次に、リスト ビューを呼び出すだけです。

于 2013-01-15T21:15:24.113 に答える
0

以下を使用して、最後に訪れた場所にスクロールできます。

List<Item> myListData = ...;
for(Item item : myListData){
    if(isNextItem(Item){
        listView.smoothScrollToPosition(myListData.indexOf(item));
        break;
    }
}

またはあなたが知っているならposition of item、あなたは単に電話することができます

listView.smootchScrollToPosition(position);
于 2015-10-08T10:19:27.950 に答える