我有两个动画在运行;显示搜索栏和显示横幅.这两个动画都在调整相同视图的大小,如果它们在同一时间运行(它们是哪个),则最新动画将取消调整大小.反正有没有检查UIView当前是否正在动画,然后待机动画?
我很确定我没有使用CAAnimations,因为Cocoa没有检测到这样的类.
这个是在收到广告时运行的.不幸的是,这与ShowSearch运行的时间相同.
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView {
if (!hasloaded) {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve: UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration: 1.0];
[bannerView_ setFrame:CGRectMake(0, self.view.frame.size.height, bannerView_.frame.size.width, bannerView_.frame.size.height)];
// move and grow
[bannerView_ setFrame:CGRectMake(0, self.view.frame.size.height-50, bannerView_.frame.size.width, bannerView_.frame.size.height)];
// set original position
[UIT setFrame:CGRectMake(UIT.frame.origin.x, UIT.frame.origin.y, UIT.frame.size.width, UIT.frame.size.height)];
// move and grow
[UIT setFrame:CGRectMake(UIT.frame.origin.x, UIT.frame.origin.y, UIT.frame.size.width, UIT.frame.size.height-50)];
[UIView commitAnimations];
hasloaded = true;
}
}
最佳答案 您可以使用UIView方法
+animateWithDuration:animations:completion:
中的完成块(这是beginAnimations / commitAnimations的一个更现代的替代方法)来链接多个动画(我猜这是您想要做的?).