Cómo programar el efecto de barrido Bumble

Acabo de mirar la aplicación Bumble y aquí está mi suposición.

El efecto es idéntico a una vista de desplazamiento vertical con paginación habilitada. Esto se puede hacer usando una vista de desplazamiento vertical e implementando los diversos métodos de delegado de vista de desplazamiento para determinar en qué página aterrizar cuando se levanta el dedo (es decir, scrollViewDidEndDragging), simplemente configurando contentOffSet. Es probable que también haya un gesto de deslizamiento como Nick Madole mencionó porque puede hacer un deslizamiento sutil verticalmente y aún así llegar a la página siguiente. Los puntos personalizados en la parte superior derecha son para imitar el controlador de paginación incorporado. Puede conectarlo al delegado de vista de desplazamiento para escuchar eventos de paginación y determinar qué punto resaltar. Desea fijar la coordenada de los puntos anulando la subvista de diseños de scrollview. O simplemente tenga una vista de contenedor, con los puntos y la vista de desplazamiento como hermanos debajo.

Por último, hay un gesto panorámico adjunto a la vista de contenedor o a la vista de desplazamiento, según el estilo de jerarquía que elija, que le permite elegir entre diferentes candidatos.

Para la aplicación iOS, probablemente usaron la clase UISwipeGestureRecognizer. Esta clase detecta deslizamientos y puede especificar a qué dirección debe responder. Combine esto con las capacidades de animación de UIView y podrá recrear fácilmente este efecto deslizar hacia arriba / abajo.

Documentos:
Referencia de clase UISwipeGestureRecognizer

Tutorial de UIGestureRecognizer Objective C:
Tutorial de UIGestureRecognizer en iOS 5: ¡Pellizcos, sartenes y más! – Ray Wenderlich

Tutorial de UIGestureRecognizer Swift:
Uso de UIGestureRecognizer con Swift Tutorial – Ray Wenderlich

More Interesting

¿Es posible imprimir en iOS sin una red wifi?

¿Qué se necesita para optimizar una aplicación de iPhone para iPads?

¿Qué empresas de servicios son buenas en la creación de equipos de desarrollo de aplicaciones de iPad subcontratados para nuevas empresas?

¿Qué es lo más difícil en el desarrollo de una aplicación para iOS?

¿Aprender a desarrollar iOS me da una ventaja significativa profesionalmente como desarrollador de Android?

¿Por qué funciona Google en iOS?

¿Por qué la interfaz de usuario de iOS se ve más pulida y premium que Android?

¿Cuándo debe un desarrollador desarrollar una aplicación nativa de iPhone (producto) / iPad / iPod Touch (producto de Apple), y cuándo debe desarrollarse una aplicación web?

¿Pueden otras personas crear aplicaciones que usan mis balizas?

¿Qué debo saber antes de crear un prototipo de aplicación móvil?

¿Por qué las vistas de tabla de iOS usan métodos de delegado cuando las vistas de tabla de macOS usan enlaces?

¿Está Apple satisfecho internamente con el lanzamiento del ticket WWDC 2012?

¿Cuál es el mejor libro para aprender a desarrollar aplicaciones iOS?

¿Qué herramientas de producción que no son Flash pueden producir y entregar animaciones en la web?

¿Los desarrolladores serios y centrados en el diseño usan Interface Builder? ¿Interface Builder se considera una herramienta novata o es lo suficientemente potente como para ser utilizada para el desarrollo serio de aplicaciones, donde el diseño centrado en los detalles es crítico?