我一直在尝试为屏幕顶部到底部构建徽标的入口效果,并在我的应用程序中加载新视图时保留该效果。我已经看过所有使用NSTimer弹出图像的教程,但是一旦我的徽标击中底部就需要退出。我将阅读动画块代码,看看我的解决方案是否存在于那里。
道歉我是新人,非常感谢他们的帮助。
答案 0 :(得分:2)
将徽标框设置为顶部,然后:
[UIView beginAnimations: @"moveLogo" context: nil];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:1.0];
[UIView setAnimationCurve: UIViewAnimationCurveLinear];
logoToMove.frame = CGRectMake( final frame at the bottom );
[UIView commitAnimations];
logoToMove
是你的标志,给它一个插座并用xib挂钩。
因此,您将设置初始帧和动画 - 最终帧。动画将完成剩下的工作。
如果您不喜欢,请将UIViewAnimationCurveLinear
更改为所需的版本。也是加速或减慢运动的持续时间。
答案 1 :(得分:0)
要在动画结束时删除视图,最简单的方法是使用块:
logoToMove.frame = topRect;
[UIView animateWithDuration:duration
animations:^{
logoToMove.frame = bottomFrame;
}
completion:^(BOOL finished) {
[logoToMove removeFromSuperview];
}
];
这样做可让您控制动画以及在单个方法完成后该怎么做