0

我有一个有 3 个视图的viewpager 。在viewpager 的onTouchEvent中,我尝试以下操作

    nextView=viewPager.getChildAt(viewPager.getCurrentItem()+1);
    switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            xValue = event.getX();
        break;
        case MotionEvent.ACTION_MOVE:
            if((xValue-event.getX())>0) {
                float translation=(-width/2)+((xValue-event.getX())/2);
                nextView.setTranslationX(translation);
            }
        break;
    }

当我从 View1 滑动到 View3 时,一切正常。但是,当我从 View3 滑回 View1 并从 View1 滑回 View3 时,getChildAt不会返回下一个视图。它正在返回当前的可见视图。

如何获取当前可见视图的下一个视图。提前致谢。任何建议表示赞赏。

4

1 回答 1

0

我错误地使用了 addView。最初我用

((ViewPager) container).addView(imageView, 0);

getChildAt 在使它像之后正常工作

((ViewPager) container).addView(imageView, position);

于 2013-10-23T12:50:33.663 回答