как я могу сделать мой CAKeyframeAnimation
имеют бесконечный счетчик повторов?CAAnimation -1 количество повторов?
Я пробовал animation.repeatCount = -1;
, но он повторяется только один раз.
как я могу сделать мой CAKeyframeAnimation
имеют бесконечный счетчик повторов?CAAnimation -1 количество повторов?
Я пробовал animation.repeatCount = -1;
, но он повторяется только один раз.
Попробуйте animation.repeatCount = HUGE_VALF;
Из документации по протоколу CAMediaTiming:
Установка этого свойства
HUGE_VALF
заставит анимацию повторить навсегда.
Вы также можете использовать
animation.repeatCount = INFINITY;
Это точно так же, как HUGE_VALF, но я предпочитаю INFINITY, как это говорит само за себя.
Float.infinity in Swift –
Просто перейдите к определению!
Не важно, что это будет: либо HUGE_VALF, либо INFINITY.
Потому что:
(math.h :)
#if defined(__GNUC__)
# define HUGE_VAL __builtin_huge_val()
# define HUGE_VALF __builtin_huge_valf()
# define HUGE_VALL __builtin_huge_vall()
# define NAN __builtin_nanf("0x7fc00000")
#else
# define HUGE_VAL 1e500
# define HUGE_VALF 1e50f
# define HUGE_VALL 1e5000L
# define NAN __nan()
#endif
#define INFINITY HUGE_VALF
и, наконец, (в соответствии с math.c):
/* FUNCTION: __builtin_huge_valf */
inline float __builtin_huge_valf(void) { return 1.0f/0.0f; }
Таким образом, каждый вариант будет в порядке:
animation.repeatCount = INFINITY;
animation.repeatCount = HUGE_VALF;
animation.repeatCount = __builtin_huge_valf();
animation.repeatCount = 1.0f/0.0f;
В Swift Я использую следующий код:
let animation = CATransition()
animation.repeatCount = Float.infinity
Float.infinity in Swift –