【发布时间】:2012-06-29 13:26:57
【问题描述】:
我正在将我的 Objective-C Cocos2d 项目转换为 ARC,并且在尝试转换扩展了其他一些类的第三方类时发现了一些问题。
以下是我收到的 ARC 错误消息:
问题中显示的静态方法是在 SneakyExtension.h 文件中定义的,该文件以这种方式扩展了一些其他类(SneakyButton、SneakyButtonSkinnedBase、SneakyJoystick..)(我只共享接口,因为代码由 Steffen Itterheim 复制) :
@interface SneakyButtonSkinnedBase (Extension)
+(id) skinnedButton;
@end
@interface SneakyJoystick (Extension)
+(id) joystickWithRect:(CGRect)rect;
@end
@interface SneakyJoystickSkinnedBase (Extension)
+(id) skinnedJoystick;
@end
您可以在这里找到源代码:look at the ShootEmUp03 example in chapter 8。
我唯一的猜测是 ARC 不知何故不支持 Extension 关键字,但我觉得我错了,因为我在 google 和 Stackoverflow 上都没有找到太多相关信息或“过渡到 ARC”Apple 的 iTunes U 教程。
任何帮助将不胜感激。
【问题讨论】:
-
您确定要为 SneakyJoystick 类和扩展导入 .h 文件吗?
-
@PhillipMills 是的,你太棒了。我认为它没问题,因为它运行没有问题(在尝试转换之前)。现在我直接导入了“SneakyExtensions.h”,它导入了所有其他头文件,这很好(现在需要检查下一个 ARC 错误,但这是一个单独的业务)。我无法安静地理解它之前是如何运行的……有什么提示吗?你想发表你的评论作为答案,我会接受它以便你得到一些分数吗?
标签: objective-c ios xcode extension-methods automatic-ref-counting