Cocos2D 弃用的动画方法
Posted
技术标签:
【中文标题】Cocos2D 弃用的动画方法【英文标题】:Cocos2D deprecated animation methods 【发布时间】:2013-08-04 18:15:24 【问题描述】:我认为升级到 XCODE5 和 Cocos2D 2.x 是合适的,但我的代码不同意。我设法找到了大多数其他代码的修复程序,但我似乎无法解决这个问题。
- (CCAnimation *)createCatAnimation:(NSString *)animType
CCAnimation *animation = [CCAnimation animation];
for(int i = 1; i <= 2; ++i)
[animation addFrame:[[CCSpriteFrameCache sharedSpriteFrameCache] //addFrame: is deprecated
spriteFrameByName:
[NSString stringWithFormat:@"cat_%@_%d.png", animType, i]]];
animation.delay = 0.2; //.delay is deprecated
return animation;
我怎样才能改变它以对已弃用的东西感到满意?
【问题讨论】:
查看 CCdeprecated.h 和 .m(.m 实现了当时的适当风格),因此您可以调整您的代码。 @YvesLeBorg 我找到了文件! :D 我不知道怎么处理它! :D 我是个大菜鸟,所以万无一失的指令会受到拥抱和蛋糕的欢迎 作为一个“菜鸟”不升级到测试版软件,你会剥夺自己的许多帮助资源,同时招致新的和未知的问题 【参考方案1】:好吧,我怀疑您收到有关某些方法已弃用的“警告”,因此您的代码可以正常工作。给你一些时间来获得一些不受欢迎的东西并弄清楚。但是,只要进入一个“不推荐”的方法,你就会看到编码它的“正确”方法。例如(来自CCDepredated.m),方法
-(void) addFrameWithTexture:(CCTexture2D*)texture rect:(CGRect)rect
[self addSpriteFrameWithTexture:texture rect:rect];
顶行是不推荐使用的语法。您会收到使用它的警告。但是,在运行时,会调用顶行并在那时调用 RIGHT 方法(包含在方法实现中)。所以你得到了警告,但仍然有效。因此,要消除警告,只需找到已弃用签名的所有实例(顶行),并用新语法替换(大括号之间)。
如果您像我一样讨厌在编译时出现未解决的警告,您最终会找到所有已弃用的调用实例并修复它们。
【讨论】:
Animation.delay 出错,而不仅仅是警告。同样的程序?谢谢:) 除非你想在任意两帧之间有一个特定的延迟,否则最好使用 animation.duration 属性来计算整个序列的总持续时间。 老实说,我很久以前从一些教程中获取了这段代码,我什至不知道它到底做了什么。但是动画不是固定时间,它会变化,所以我猜 .delay 会很有用。有什么建议吗? Whatevs,搞砸那条线。我会想出一个解决方法。感谢您提供有关已弃用内容的知识。以上是关于Cocos2D 弃用的动画方法的主要内容,如果未能解决你的问题,请参考以下文章