Reimplementar los métodos de animación basados en bloques UIView con una curva de suavizado personalizada
La falta de curvas de aceleración personalizadas en los métodos de animación basados en bloques de UIView conduce a Core Animation si se necesitan curvas más avanzadas.
Una forma de hacer esto con una Categoría enCAKeyframeAnimation
se discute en¿Cómo crear una función de aceleración personalizada con Core Animation?.
Para mantener mi código limpio y mantenible, me gustaría ir un paso más allá y volver a implementarlo.UIView
Los métodos basados en bloques e incluyen un bloque que describe la función de curva de suavizado. categoría resultante enUIView
se vería algo como esto:
+ (void)animateWithDuration:(NSTimeInterval)duration easingCurveFunction:(double(^)(double))function animations:(void (^)(void))animations;
¿Alguien tiene una idea de cómo Apple implementa sus métodos de animación basados en bloques?