一起控制两个ViewPager

Nit*_*ija 6 android android-layout android-scrollview android-viewpager android-scroll

我需要将两个ViewPager同步在一起.要求类似于滚动ViewPager-1,ViewPager-2也应该滚动一定量.下面的图片将使您更清楚我的问题.

在此输入图像描述

你也可以帮我一些教程链接.谢谢.

小智 14

我想这就是你需要的:

        viewpager1.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                viewpager2.onTouchEvent(event);
                return false;
            }
        });

        viewpager2.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                viewpager1.onTouchEvent(event);
                return false;
            }
        });
Run Code Online (Sandbox Code Playgroud)

我有同样的问题,但首先我尝试使用fakeDragBy方法,这是死路一条.(如果你有两页以上)

  • 使用这种技术,如果您同时触摸两个视图寻呼机,我会崩溃.我最终在这里使用这种方法:/sf/answers/1855927041/ (2认同)

Zzo*_*okk 2

您可以扩展 ViewPager 以创建自定义视图并按以下方式重写 onTouchEvent() :

        @Override
        public boolean onTouchEvent(MotionEvent event) {

          if(mDependentView != null){
            mDependentView.onTouchEvent(event);
          }
          return super.onTouchEvent(event);
        }
Run Code Online (Sandbox Code Playgroud)

还要在自定义类中创建一个 setter 以设置 dependentView

public void setDependentView(View view){
   mDependentView = view;
}
Run Code Online (Sandbox Code Playgroud)

然后,您应该将第二个 viewpager 设置为活动中第一个 viewpager 的依赖视图。