2016-09-23 2 views
2

У меня есть некоторые проблемы с параметрами анимации с array в Swift 2. Я могу добавить несколько опций в array следующим образом: [.Repeat, UIViewAnimationOptions.Autoreverse], и это, если я добавлю функцию анимации (сначала пример):iOS Swift - Невозможно изменить параметры анимации с помощью массива [UIViewAnimationOptions]

UIView.animateWithDuration(1, delay: 0, options: [.Repeat, UIViewAnimationOptions.Autoreverse], animations: { 

    }) { (true) in 

    } 

Но я не могу добавить параметры анимации в array, как это (второй пример):

var animationOptions = [UIViewAnimationOptions]() 
animationOptions.append(UIViewAnimationOptions.Repeat) 
animationOptions.append(UIViewAnimationOptions.Autoreverse) 
UIView.animateWithDuration(1, delay: 0, options: animationOptions, animations: { 

    }) { (true) in 

    } 

может кто-то помочь мне сделать варианты анимации в массиве, как SECON d пример?

ответ

2
var animationOptions:UIViewAnimationOptions = .repeat 
    animationOptions.insert(.autoreverse) 
    UIView.animate(withDuration: 0.1, delay: 0.1, options: animationOptions, animations: { 

    }) { (success:Bool) in 

    } 

Вы должны использовать вставку из SetAlgebra протокола, которую OptionSet соответствует. В вопросе вы используете объект Array вместо UIViewAnimationOptions.

+0

Waooow, Большое спасибо @ New16. Это ответ на мои вопросы! – icaksama

0

Вы можете использовать опцию анимации с Swift 2 как это:

UIView.animateWithDuration(0.2, delay: 0.0, options: [.Repeat, 
.Autoreverse, .CurveLinear, .CurveEaseOut, .CurveEaseInOut, 
.TransitionCurlUp, .TransitionCurlDown, 
.TransitionFlipFromBottom,.TransitionFlipFromLeft,.Transitio‌​nFlipFromRight, 
.BeginFromCurrentState, .CurveEaseIn], animations: {}, completion: nil) 
+0

Попробуйте этот вариант и отправьте обратную связь ... –

+0

спасибо за ответ, но мне нужно несколько вариантов анимации в массиве, чтобы добавить бесконечную анимацию. просмотрите второй пример в моем вопросе. – icaksama

+0

UIView.animateWithDuration (0,2, задержка: 0.0, опции: [.repeat, .Autoreverse, .CurveLinear, .CurveEaseOut, .CurveEaseInOut, .TransitionCurlUp, .TransitionCurlDown, .TransitionFlipFromBottom, .TransitionFlipFromLeft, .TransitionFlipFromRight, .BeginFromCurrentState, .CurveEaseIn] , анимация: {}, завершение: nil) –

Смежные вопросы