リストビューにOnScrollListenerを実装していれば、ScrollStateがいつ変更されるかを見ることができます。 OnScrollListenerがSCROLL_STATE_IDLEのScrollStateを登録すると、smoothScrollBy()を呼び出してからfalseに設定すると、グローバルブール値(isScrolling)がtrueに設定されます。
sidebar1.smoothScrollToPositionFromTop(currentPosition, 0, 500);
isScrolling = true;
sidebar1.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
isScrolling = false;
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
}
});
私は 'smoothScroll *'関数は、スクロール状態変化をトリガーするため、 '(OnScrollListener.onScrollStateChanged表示されませんが)'無用コールバック私自身のデバッグから確認することができます。 – ohhorob