Multiple CAAnimations for animationDidStop method?(animationDidStop 方法的多个 CAAnimations?)
问题描述
我知道你必须使用这个方法来获取动画结束时的委托方法:
I know you have to use this method to get the delegate method for when the animation has finished:
- (void)animationDidStop:(CAAnimation *)theAnimation finished:(BOOL)flag {
问题是,我如何区分多个 CAAnimations,比如 2 个或更多?
The problem is, how would I distinguish between multiple CAAnimations like 2 or more?
我用谷歌搜索了这个,但没有发现任何有用的东西.
I googled this and I haven't found anything useful.
请与我分享你是如何做到这一点的!
Please share with me on how you accomplished this!
谢谢!
推荐答案
您可以像这样为 CAAnimation 实例设置键/值对象:
You can set key/value objects for CAAnimation instance like this:
CABasicAnimation *theAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
[theAnimation setValue:@"animation1" forKey:@"id"];
theAnimation.delegate = self;
CABasicAnimation *theAnimation2 = [CABasicAnimation animationWithKeyPath:@"opacity"];
[theAnimation2 setValue:@"animation2" forKey:@"id"];
theAnimation2.delegate = self;
检查委托方法中调用了哪一个:
Check which one was called in delegate method:
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag{
if([[anim valueForKey:@"id"] isEqual:@"animation1"]) {
NSLog(@"animation1");
}
if([[anim valueForKey:@"id"] isEqual:@"animation2"]) {
NSLog(@"animation2");
}
}
这篇关于animationDidStop 方法的多个 CAAnimations?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:animationDidStop 方法的多个 CAAnimations?


基础教程推荐
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01