0

我正在使用从该站点获得的 RealViewSwitcher。

它在我的代码上完美运行,但我不知道如何将初始当前屏幕设置为第二个或第三个屏幕。

该方法setCurrentScreen(int)不会影响任何事情,如果我将 onLayout() 方法中的 for 循环从更改for (int i = 0; i < count; i++) {...}for (int i = 1; i < count; i++){...}它确实从第二页开始,但您不能转到第一页。

知道如何从第二页开始吗?

4

1 回答 1

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 回答