El evento ViewPager onPageScrolled no se llama

El código siguiente se desplaza las 4 páginas muy bien. Mi problema es que el evento onPageScrolled no se activa cuando se onPageScrolled las páginas. Esto ocurre si utilizo o no el myPager.SetOffsccreenPageLimit(4) . Después de leer los documentos, entiendo que cuando tengo implements ViewPager.OnPageChangeListener incluido en la clase MyPagerAdapter que el evento debe ser activado. ¿Qué estoy haciendo mal?

Gracias, Gary Blakely

 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); MyPagerAdapter adapter = new MyPagerAdapter(); ViewPager myPager = (ViewPager) findViewById(R.id.mysevenpanelpager); myPager.setAdapter(adapter); myPager.setCurrentItem(0); myPager.setOffscreenPageLimit(4); } private class MyPagerAdapter extends PagerAdapter implements ViewPager.OnPageChangeListener { public int getCount() { return 4; } public Object instantiateItem(View collection, int position) { LayoutInflater inflater = (LayoutInflater) collection.getContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); int resId = 0; switch (position) { case 0: resId = R.layout.left; break; case 1: resId = R.layout.gps; break; case 2: resId = R.layout.map; break; case 3: resId = R.layout.right; break; } View view = inflater.inflate(resId, null); ((ViewPager) collection).addView(view, 0); return view; } @Override public void destroyItem(View arg0, int arg1, Object arg2) { ((ViewPager) arg0).removeView((View) arg2); } @Override public void onPageScrollStateChanged(int arg0) { int myint = 9; myint = myint * 2; } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { int myint = 9; myint = myint * 2; } @Override public void onPageSelected(int arg0) { int myint = 9; myint = myint * 2; } } 

También es necesario set el listener mediante setOnPageChangeListener() .

 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); MyPagerAdapter adapter = new MyPagerAdapter(); ViewPager myPager = (ViewPager) findViewById(R.id.mysevenpanelpager); myPager.setAdapter(adapter); myPager.setCurrentItem(0); myPager.setOffscreenPageLimit(4); myPager.setOnPageChangeListener(adapter); // This line here } 

Creo que también debe registrar su instancia de adaptador como un oyente para esos tipos de eventos también usando .setOnPageChangeListener () en ViewPager.

  • Cómo crear las pestañas de la barra de herramientas con ViewPager en el diseño del material
  • Actualizar ViewPager dinámicamente?
  • FragmentPagerAdapter Deslizar para mostrar ListView 1/3 Anchura de la pantalla
  • Cómo pasar JSON Array utilizando objeto JSON
  • Establecer dinámicamente la altura de ViewPager
  • Android: activa el desplazamiento de la barra de aplicaciones en una base de datos de reciclaje por visor
  • Error con ViewPager y RecyclerView
  • PagerTitleStrip no muestra títulos en la primera página de visualización, los títulos sólo se dibujan después de pasar a otra página
  • ViewPager llamada setUserVisibleHint después de que se carga el primer fragmento
  • Actividad del botón con viewPager?
  • Agregando Viewpager como un encabezado a un listView
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.