No estás limitado a un solo cambio de estilo. Los elementos pegajosos tienen tres tipos: pegajoso después, pegajoso antes y pegajoso inferior. La posición del elemento siempre es relativa a la ventana de desplazamiento. El método de interpolación maneja las estimaciones para los elementos pegajosos. El gráfico muestra los rangos especificados y los valores calculados. El segundo ejemplo desplaza el elemento con su posición Y negativa. El ejemplo de pegajoso inferior calcula la posición inicial del elemento. El método de interpolación asegura que el elemento sea visible en la ventana de visualización.
Los elementos del carrusel activo tienen el índice como un valor compartido. No estás limitado a un solo cambio de estilo, en este caso estoy aplicando una escala diferente basada en la exposición al desplazamiento, pero por supuesto puedes usar la interpolación de color y aplicar un color diferente para cada elemento individual basado en hacia dónde se va a mover. Así que si se mueve hacia la izquierda, aplicaré magenta, si se mueve hacia la derecha, aplicaré dorado. Y observa que todo se ejecuta a 60FPS o 120FPS dependiendo de las capacidades de tu dispositivo, pero todo se ejecuta en UITread, lo que lo hace realmente eficiente. Por último, me gustaría llamarlo un examen de interpolación cuando sabes cómo hacerlo pegajoso. Lo que quiero decir con pegajoso es lo siguiente. Así que hay tres tipos de pegajoso. Es pegajoso después, cuando el borde superior del elemento pegajoso es igual al borde superior de la ventana de visualización o pegajoso antes, cuando el borde superior del elemento es el borde superior de la ventana de visualización y pegajoso inferior. Es pegajoso inicialmente, pero cuando el borde inferior del elemento pegajoso, que es el borde inferior de la ventana de visualización, se va a mover junto con el desplazamiento. Antes de seguir adelante, debes entender dos cosas diferentes. La primera es que la posición del elemento siempre se mueve en relación con la ventana de desplazamiento, esto se debe a que el elemento está posicionado de manera relativa, no absoluta. Y la segunda es que es importante determinar cuándo el elemento pegajoso es visible dentro de la pantalla o dentro de la ventana de visualización, ya sea utilizando un borde superior o un borde inferior. Aquí tenemos un scroll view y solo estoy renderizando un elemento pegajoso posicionado al azar dentro de un scroll view, de lo contrario, es solo un elemento ficticio.
Para el primer ejemplo, estoy obteniendo el valor Y, básicamente la posición Y dentro de ese desplazamiento para el elemento pegajoso y estoy interpolando el desplazamiento Y y está diciendo que cuando el borde superior del elemento alcance el borde superior de la ventana de visualización, estoy compensando el movimiento en uno. Verás que simplemente pasando el rango de entrada y el rango de salida, básicamente estoy especificando el rango en el que estoy interesado y para dar forma a este movimiento, la interpolación se encargará del resto de las estimaciones. Ahora veamos, echemos un vistazo al gráfico que también he presentado en las diapositivas anteriores. Como puedes ver, simplemente estoy especificando tres partes diferentes en las que estoy interesado y el resto es calculado por el método de interpolación. Sí, simplemente dejo todo en manos de la interpolación para hacer la estimación de los valores.
El siguiente es básicamente lo mismo, pero esta vez estoy moviendo el elemento desplazándolo con su posición Y negativa, por lo que siempre estará visible en la parte superior, pero cuando el borde superior del elemento alcance el borde superior de la ventana de visualización, lo moveré con el desplazamiento. También estoy agregando un menos 1 y 0 solo porque en iOS, por ejemplo, hay rebotes, por lo que puedes moverte por debajo de menos 1 con el valor de desplazamiento Y. Entonces, nuevamente, así es como se verá el gráfico. Solo especificaré el rango en el que estoy interesado y el resto será calculado por el método de interpolación.
Por último, está el pegajoso inferior. Básicamente, es lo mismo que el pegajoso antes, la única diferencia aquí es que estoy calculando la posición inicial del elemento. En este caso, estoy compensando con su posición Y negativa, por lo que está en la parte superior, luego estoy agregando la altura de la pantalla. Ahora está en la parte inferior y estoy restando su altura. Por lo que siempre es visible en la parte inferior de la pantalla. Y observa que hay un valor de desplazamiento Y. Y la razón de esto, nuevamente, es que el elemento está posicionado de manera relativa, no absoluta. Por lo tanto, siempre necesito compensar la posición de desplazamiento Y. Y se trata simplemente de encontrar el punto óptimo donde este elemento será visible o este método de interpolación básicamente dice que sea pegajoso hasta que el elemento sea completamente visible en la ventana de visualización.
Comments