我查看了Apple文档中的动画,其中大部分内容似乎很清楚。但是,我很快就会向一群人解释动画,并且我不太了解动画方法的一些组成部分。这是我从文档中删除的代码:
- (IBAction)showHideView:(id)sender
{
// Fade out the view right away
[UIView animateWithDuration:1.0
delay: 0.0
options: UIViewAnimationOptionCurveEaseIn
animations:^{
thirdView.alpha = 0.0;
}
completion:^(BOOL finished){
// Wait one second and then fade in the view
[UIView animateWithDuration:1.0
delay: 1.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
thirdView.alpha = 1.0;
}
completion:nil];
}];
}
首先,我想知道这个基于块的过程是否比使用开始/提交过程更好。
我的其他问题是在代码块中的每个方法之前的箭头(^)和UIViewAnimationOption的使用。
为什么在每个子方法之前需要箭头?
UIViewAnimationOption只是一个原语,还是会自动返回一个值?
感谢任何帮助
答案 0 :(得分:0)
只需查看UIView文档即可找到大多数问题的答案。
来自文档:
在iOS 4及更高版本中不鼓励使用此(开始/提交)部分中的方法。请改用基于块的动画方法。
同一文档列出UIViewAnimationOptions
为typedef NSUInteger UIViewAnimationOptions;
NSUInteger基本上只是标准unsigned int的typedef。
插入符号(^)用于表示块。