私はDOCと呼ばれ、それは言った:は何ブールパラメータはanimateWithDurationで行うん:アニメーション:完了:
が完了
...このブロックは、戻り値はありませんし、単一のブールをとります完了ハンドラが呼び出される前にアニメーションが実際に終了したかどうかを示す引数。 ...
しかし、私はあなたがブールパラメータを使用するかどうかに関係なく、completion:
ブロックは常にanimations:
ブロックの後に実行されることがわかります。以下に示す2つの単純なブロックベースのアニメーションコードスニペットのように、どちらも同じことをしています。
[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
です。 - または状況はどうなりますか?
大きな疑問は、私のコードが今日発作を引き起こしているアニメーションを作成するまで、これについて本当に疑問に思ったことはありません。これを聞いてくれてありがとう! –