0

このサイトから入手したRealViewSwitcherを使用しています。

私のコードでは完全に機能しますが、現在の初期画面を2番目または3番目の画面に設定する方法がわかりません。

このメソッドsetCurrentScreen(int)は何にも影響を与えません。onLayout()メソッド内のforループをからに変更すると、for (int i = 0; i < count; i++) {...}2for (int i = 1; i < count; i++){...}ページ目から始まりますが、1ページ目に移動することはできません。

2ページ目から始める方法はありますか?

4

1 に答える 1

2

ローカルソリューションは、新しいクラスメソッドを追加することです。2ページ目から始めたい場合は、snapToScreenFast(2)を呼び出してください。

public void snapToScreenFast(int whichScreen) {
    if (!mScroller.isFinished())
        return;

    whichScreen = Math.max(0, Math.min(whichScreen, getChildCount() - 1));

    mNextScreen = whichScreen;

    final int newX = whichScreen * getWidth();
    final int delta = newX - getScrollX();
    mScroller.startScroll(getScrollX(), 0, delta, 0, 0);
    invalidate();
}
于 2012-09-07T09:36:48.860 に答える