objective-c - 在多个类中使用 *value

标签 objective-c cocos2d-iphone

我确信这非常简单,但它已经困惑了好几个小时了。

假设我有以下设置:(简化)

-(void) ClassA {
CCSprite *boat = [CCSprite spriteWithFile:@"boat.png"];
[self addChild: boat];
}

-(void) ClassB {
CGPoint velocity = CGPointMake(0, 1);
boat.position = ccpAdd(boat.position, velocity);
}

如何使 A 类的*船可在 B 类中使用?

最佳答案

使其成为ClassA的成员变量,并为CCSprite *boat编写getter方法。

+(CCSprite *)boat
{
return boat;
}

现在在B类

[ClassA boat];  

编辑
您还可以使用属性或关联对象...两者都按照 Richard J. Ross III 的建议工作得非常好。 .
如果您的应用程序中只需要一个对象实例,请查看 Singletons, AppDelegates and top-level data发布。

关于objective-c - 在多个类中使用 *value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9447287/

相关文章:

ios - 当 Cocos2D 2.0 支持 NPOT 纹理时,为什么要使用纹理图集?

ios - 在 CollectionView 上按需滚动加载更多数据

ios - 我的第一个 Cocos2d iPhone 应用程序有问题吗?

ios - 从 Documents 目录存储和读取文件 iOS 5

ios - Cocos2D 游戏场景中 CCSpriteBatchNode 和纹理表的最佳方法是什么

iphone - 崩溃登录设备

Objective-C 相当于 Java 包?

iphone - DetailView页面从RowView继承代码

iphone - 触摸索引时显示 UITableView 的部分标题

ios - CollectionView 委托(delegate)在 URL 连接完成之前调用