Что именно делает параметр bool в animateWithDuration: animations: complete:
Я ссылался наDOC и он сказал:
завершение
... Этот блок не имеет возвращаемого значения и принимает один логический аргумент, который указывает, действительно ли анимация закончилась до вызова обработчика завершения. ...
Но я считаю, что независимо от того, используете ли вы параметр bool или нет,completion:
блок всегда будет выполняться послеanimations:
блок. Как и два простых фрагмента кода анимации на основе блоков, показанных ниже, оба они делают то же самое.
[UIView animateWithDuration:0.3f
delay:0.0f
options:UIViewAnimationCurveEaseInOut
animations:^{
[myView setAlpha:0.0f];
}
completion:^(BOOL finished) {
[myView removeFromSuperview];
}];
а также
[UIView animateWithDuration:0.3f
delay:0.0f
options:UIViewAnimationCurveEaseInOut
animations:^{
[myView setAlpha:0.0f];
}
completion:^(BOOL finished) {
if (finished) [myView removeFromSuperview];
}];
И я нахожу, что большинство людей (включая меня) используют первый (даже официальный документ Apple). Так,
что этоfinished
параметр используется для здесь точно?или какая ситуация будет использоваться?