Implementación de ViewPager circular

Solución 1: especificando un número muy grande como el recuento real, pero los asigna al rango real del conjunto de datos / conjunto de páginas

ViewPager como una cola circular / envoltura

Problema: No funciona si hay menos de 4 elementos.


Solución-2 Añadir 2 elementos adicionales, es decir, el último elemento del primer y primer elemento en el último y onPageSelected, dependiendo de los valores de posición, establezca el elemento actual

Implementación de desplazamiento circular en PagerAdapter

Problema: Indicadores adicionales de buscapersonas y instancias de fragmentos adicionales.


Solución-3: Uso del onTouchListener en ViewPager

Implementación de desplazamiento circular en PagerAdapter

Problema: El primer MotionEvent siempre es nulo. ¿Se debe a la implementación onTouchListener de ViewPager?

¿Hay una solución adecuada para esto?

O incluso si la tercera solución funciona bien, sería genial.

One Solution collect form web for “Implementación de ViewPager circular”

Utilizo una combinación de la Solución 2 y la Solución 3, uso el oyente táctil del buscapersonas para mirar para los barridos y ver si necesito mostrar la copia de la primera o última página basada en la página actual

ejemplo:

mPager.setOnTouchListener(new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_DOWN){ dxInitial=event.getX(); // }else if(event.getAction() == MotionEvent.ACTION_MOVE){ // if(event.getX() - dxInitial > 50 && currentPage==1){ }else if(dxInitial - event.getX() > 50 && currentPage==5){ mPager.setCurrentItem(0,false); }else if(dxInitial - event.getX() > 50 && currentPage==6){ mPager.setCurrentItem(1,false); }else if(event.getX() - dxInitial > 50 && currentPage==0){ mPager.setCurrentItem(5,false); }else if(event.getX() - dxInitial > 100 && currentPage==6){ // mPager.setCurrentItem(1,false); } } return false; } }); 

usted tiene indicadores adicionales del paginador pero el usuario nunca debe verlos o notarlos, apenas fije smoothScroll a falso cuando usted cambia la página

  • Utilizar Pull to Refresh gridview en viewpager en Activity within ActivityGroup provoca ClassCastException
  • Utilizar FragmentStatePagerAdapter sin biblioteca de soporte
  • Anfitrión de múltiples fragmentos en viewpager
  • Android PagerAdapter, obtener la posición actual
  • Pestañas deslizantes dentro de las pestañas de la barra de acciones
  • Android.content.res.Resources $ NotFoundException: No se puede encontrar el recurso ID # 0xffffffff
  • NoClassDefFoundError en DirectionalViewPager usando
  • Vista previa de desplazamiento en Viewpager
  • Dimensión de ViewPager de Android
  • Android Viewpager tinder como UI con la apariencia de la pila de tarjetas 3D
  • La imagen de fondo de Android ralentiza la aplicación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.