使用ARC的新iPhone cocos2d项目

时间:2012-01-21 22:06:42

标签: iphone ios xcode cocos2d-iphone automatic-ref-counting

从使用Xcode 4.2和cocos2d的新项目开始。我想在我的代码中使用ARC并将cocos2d作为静态库链接。

从github下载了cocos2d并安装了新模板。

创建了一个新的cocos2d项目,但是Xcode没有在第二个对话框中显示通常的ARC复选框。

我假设这是因为模板是Xcode 3模板?

任何对此的想法都将受到赞赏。

感谢

更新

因为我发布了这个我下载了cocos2d v2并设法用cocos2d作为静态lib编译hello世界。该项目是使用cocos2d模板创建的,看起来它被设置为在“Build Settings”中使用LLVM comp v3但没有ARC,这是预期的,因为模板没有给我ARC复选框。

我将Refactor运行到ARC,并在AppDelegate(.h& .m)中修改了一些东西,HelloWorldLayer.m和main.m仍在ARC之前。

这告诉我v2 cocos2模板还没有更新,这很奇怪,因为v2应该是ARC'ed。

我错过了什么吗?我应该使用不同的模板吗?

Kobold2d听起来很酷但有快速入门指南吗?

感谢

3 个答案:

答案 0 :(得分:4)

如果您想在ARC中使用cocos2d-iphone,请考虑使用Kobold2D。默认情况下,每个项目都启用ARC,您不必执行深蹲只需安装并开始编码。由于它是默认选项,因此您可以确定Kobold2D中的(改进的)cocos2d-iphone版本已经过ARC测试,并且包含一些额外的ARC修复程序。

cocos2D从v1.0.1 / 1.1 beta和2.0 beta2 do not support ARC out of the box开始(没有启用ARC的模板项目)。这个Tiny Tim games tutorialthis Ray Wenderlich tutorial教您如何正确设置cocos2d-iphone以构建为静态库,以便为项目代码启用ARC。

您没有看到ARC作为选项的可能原因:

  • 项目未设置为使用“Apple LLVM Compiler 3.0”
  • 您正在寻找ARC,但构建设置实际上名为“Objective-C自动引用计数”

请注意,据我所知,cocos2d-iphone 1.0.1(当前稳定版)与ARC不兼容,但我相信v1.1 beta已经添加了ARC支持。请务必使用1.1 beta或2.0 beta。

更新以回复更新

直接而简单:截至今天的cocos2d-iphone不支持开箱即用的ARC。 cocos2d-iphone没有提供启用ARC的模板。

但是,如果您将cocos2d-iphone构建到已禁用ARC的静态库中,则v1.1和2.0及更高版本都可以在启用ARC的项目中进行编译。这就是Tiny Tim游戏教程的用途。

相比之下Kobold2D提供的所有项目都启用了ARC,如果您不想使用ARC,则只需在Build Settings中禁用它。我希望你会发现User's Guide很有帮助。开始使用Kobold2D真的没什么可学的。

答案 1 :(得分:0)

我已经一步一步地简要介绍了如何使用Kobold2D将静态SimpleAudio cocos2d引擎添加到您的ARC项目中 - https://coderwall.com/p/jslwrg 您也可以将它用于所有cocos2d库...

答案 2 :(得分:0)

我刚刚这样做;使用Xcode中的 Edit-> Refactor->转换为Obj-C ARC 工具,可以非常快速地将基本Cocos2D 2.0转换为ARC。

只需使用Cocos2D模板打开一个新项目,转换为ARC,选择4个底部文件(.m)并保存!