Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo implementar el efecto de aparición y desaparición gradual de UIView

Cómo implementar el efecto de aparición y desaparición gradual de UIView

Muchas propiedades de la clase UIView están diseñadas para ser animadas. Las propiedades animadas significan que cuando una propiedad cambia de un valor a otro, puede admitir animación y notificar a UIKit qué tipo de animación se debe realizar. Las propiedades de los objetos UIView que admiten animación son las siguientes:

Propiedad de marco: puede utilizar esta propiedad para cambiar el tamaño y la posición.

Borde: Cambia el tamaño

Centro: Cambia la posición de la vista

Alfa: Cambia la transparencia de la vista.

BackgroundColor: Cambia el fondo de la vista.

ContentStretch: cambia la forma en que se estira el contenido de la vista.

IOS encapsula la animación central para implementar la animación. El mayor beneficio de Core Animation es que puede ayudar a los desarrolladores de Mac o iPhone a reducir la cantidad de código. Porque si desea utilizar Core Image u Open GL para implementar efectos de animación en la interfaz, en realidad es posible, pero es principalmente problemático. El uso de Core Animation puede simplificar enormemente el desarrollo y reducir la cantidad de código. La interfaz central de programación de animación proporcionada por IOS permite a los programadores lograr efectos de animación deslumbrantes y fluidos de una manera muy sencilla.

Voltear animación

//Iniciar animación

[vista ui comienza animaciones: @ contexto " vista WAP ": nil]

//Configuraciones frecuentes

[ui view setAnimationDuration: 1];

//Establece la aparición y desaparición gradual de la animación.

[ui view setAnimationCurve: uivieanimationcurveeaseinout];

//Establecer proxy

[ui view setAnimationDelegate: self];

// Establecer dirección de giro

[ui view setAnimationTransition: uivieanimationtransitionflipfromreffor view: manImageView cache: YES];

//La animación finaliza

[ui view promesa];

p>

Animación de rotación

Crear objeto de transformación cgaffinitetransform transformación cgaffinitetransform;

// Establece el ángulo de rotación.

transform = cgaffinitetransformrotate(manimageview . transform, M_PI/6.0);

//La animación comienza

[ui view comienza las animaciones: @ contexto "rotate": nil];

//Animación frecuente

[ui view setAnimationDuration: 2];

//Agregar proxy

[ ui view setAnimationDelegate: self];

//Obtener el valor convertido

[manImageView set transform: transform];

//Desactivar la animación

[promesa de vista de interfaz de usuario];

Animaciones de desplazamiento

[animaciones de inicio de vista de interfaz de usuario:@ contexto " mover ": nulo];

[vista de interfaz de usuario setAnimationDuration: 2];

[ui view setAnimationDelegate: self]; //Cambia los valores xey de su marco, manimageview frame = cgretmake(100, 100, 120, 100)

[promesa de vista de interfaz de usuario];

Animación de página

[animaciones de inicio de vista de interfaz de usuario:@ contexto " curlUp ": nulo];

[ui view setAnimationCurve:uivieanimationcurveeaseinout]; //Especifique el tipo de curva de animación. Esta enumeración es la enumeración uniforme lineal predeterminada.

//Establecer animación con frecuencia [ui view Establecer duración de la animación: 1];

[ui view setAnimationDelegate: self]; //Establecer la dirección de giro de la página.

[ui view setAnimationTransition: uivieanimationtransitioncurlup para ver: manImageView cache: YES]

//Desactivar animación

[ui view promesa];

Escalar animación

Transformación CGAffineTransform;

transform = cgaffinitetransformscale(manimageview. transform, 1.2, 1.2);

[ui ver comenzar animaciones: @ contexto " escala ": nulo];

[ui view setAnimationDuration: 2];

[ui view setAnimationDelegate: self]

[manImageView set transform: transform ];

[Compromiso de vista de UI];

El efecto de animación inversa se basa en la animación inversa de la animación actual.

Transformación CGAffineTransform;

transform = cgaffinitetransforminvert(manimageview . transform);

[vista ui comienza animaciones:@ contexto "Invertir": nil];

p>

[ui view setAnimationDuration: 2]; //Animación frecuente

[ui view setAnimationDelegate: self];

[manImageView set transform: transform ]; //Obtener transición de vista modificada [animación de envío de vista de interfaz de usuario]; //Cerrar animación