luk*_*r90 4 quartz-graphics ios
我试图用iOS中的UIAlertView模拟OS X中错误的密码输入动画.基本上我希望它翻译警报左,然后翻译正确.这是我在做的事情:
[UIView animateWithDuration:0.5
animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, 200, 0);
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, -200, 0);
}];
Run Code Online (Sandbox Code Playgroud)
然而,这没有期望的效果.瞬间向右发出警报,然后顺利转向左侧.如何让两个翻译在彼此之后顺利进行?
试试这个:
[UIView animateWithDuration:0.5 animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, 200, 0);
} completion:^(BOOL finished) {
[UIView animateWithDuration:0.5 animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, -200, 0);
}];
}];
Run Code Online (Sandbox Code Playgroud)
但我会像这样做动画:
[UIView animateWithDuration:0.1 animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, 20, 0);
} completion:^(BOOL finished) {
[UIView animateWithDuration:0.1 animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, -20, 0);
} completion:^(BOOL finished) {
[UIView animateWithDuration:0.1 animations:^{
alertView.transform = CGAffineTransformTranslate(CGAffineTransformIdentity, 0, 0);
}];
}];
}];
Run Code Online (Sandbox Code Playgroud)
由你决定!;-)
| 归档时间: |
|
| 查看次数: |
570 次 |
| 最近记录: |