sizes icon guidelines font blue ios layout swipe-gesture

icon - ¿Equivalente a la ViewPager de Android en iOS? Desliza/hojea páginas de datos



ios multitasking (5)

En Android hay una manera ordenada de navegar entre varias páginas de datos con el mismo diseño usando ViewPager y Fragments. El usuario se desliza hacia la izquierda o hacia la derecha, y las páginas cambian. Solo hay un controlador de vista y un recurso de diseño para todas las páginas, pero el contenido de datos cambia cuando el usuario navega. También hay un efecto de animación al deslizar hacia la izquierda y hacia la derecha donde puede ver que el contenido de la página siguiente ya está cargado.

¿Cuál es el equivalente a esto en iOS?


Creé un control personalizado para iOS que funciona de forma similar a viewPager de Android. Puedes ver esto here .



Puede implementarlo usted mismo usando la siguiente idea.

Supongamos que deseamos realizar un bucle infinito a través de 3 elementos (células): C0, C1, C2, podemos generar células ficticias en el lado izquierdo y derecho de las células centrales, el resultado es el siguiente,

C0 C1 C2 [C0 C1 C2] C0 C1 C2

Las celdas en el paréntesis son celdas que vemos a través de la pantalla del dispositivo, y si nos desplazamos a la izquierda,

C0 [C1 C2 C0] C1 C2 C0 C1 C2

en este momento, fuerce contentOffset para señalar el lado derecho de las celdas ficticias dadas,

C0 [C1 C2 C0] C1 C2 C0 C1 C2 -> C0 C1 C2 C0 [C1 C2 C0] C1 C2

Funcionará en el mismo mecanismo cuando lo desplace a la derecha.

En mi solución a continuación, configurar el ancho de la vista del elemento a su vista principal resolverá su problema.

https://github.com/DragonCherry/HFSwipeView

Si simplemente desea comprobar cómo funciona, haga clic en el enlace a continuación y "toque para jugar".

https://www.cocoacontrols.com/controls/hfswipeview

Solo usar la opción pagingEnabled en UIScrollView puede funcionar en el caso de un elemento de celda de tamaño completo, pero no funcionará correctamente si desea establecer un ancho de elemento de contenido más estrecho que su vista principal (desplazamiento). Compruebe esta función consultando la muestra de controles de coco para "Sincronización" o "Vista previa del borde".


visita https://github.com/vowed21/HWViewPager

Puede ser de ayuda.

Heredado UICollectionView.

Celda reutilizable, (probablemente adaptador de Android)

Y habilitar la vista previa de la parte izquierda, derecha.


Use un UIScrollView con la propiedad pagingEnabled establecida en YES. Por lo UIPageControl se usa un UIPageControl junto con él.

Si buscas en Google "paginación UIScrollView", puedes encontrar muchos tutoriales y ejemplos. Apple proporciona un programa de muestra PageControl .

iOS no proporciona ningún tipo de clase similar a un adaptador, pero aquí hay un tutorial que explica cómo implementar "páginas virtuales" para que no tenga que crear instancias de todas las páginas a la vez: http://cocoawithlove.com/2009/01/multiple-virtual-pages-in-uiscrollview.html