如何在目标c中创建此AS3数据结构?

时间:2012-07-06 11:15:51

标签: objective-c actionscript-3 data-structures

在AS3中如果我想快速设置一些数据可以使用,我会做这样的事情......

static var playerData:Object = {position:{startX:200, startY:200}};

我如何在Objective c中创建相同的内容?

或者..有更好的方法在Obj-c中存储类似的数据结构吗?

2 个答案:

答案 0 :(得分:1)

要说清楚,我不是Objective-C的专家,所以也许一些Objective-C大师可以帮助你做得更好。但我认为您可以使用NSMutableDictionary来模拟Object AS3行为:

id playerData = [[NSMutableDictionary alloc] init];
id position = [[NSMutableDictionary alloc] init];

[position setObject:@"200" forKey:@"startX"];
[position setObject:@"200" forKey:@"startY"];

[playerData setObject:position forKey:@"position"];

如果在AS3中您访问为:

playerData.position.startX

在Objective-C中你可以这样做:

[[playerData objectForKey:@"position"] objectForKey:@"startX"];

答案 1 :(得分:1)

如果这是你会经常使用的东西,也许创建自定义类是一种更好的方法。

customClass <NSObject>

@property float startX
@property float startY

这样,您可以像在AS3中一样使用点:

customClassIstance.startX / startY

如果您需要进一步澄清,请与我们联系。