我遇到了枚举类型初始化的问题,似乎很容易解决,但我还没有弄清楚如何去做。假设我声明了以下枚举类型:
typedef enum NXSoundType {
NXSoundTypeNone,
NXSoundTypeEffect,
NXSoundTypeBackgroundMusic
} NXSoundType;
我声明了一个方便的方法,用于返回给定这样的 NSString 对象的 NXSoundType 枚举类型之一(注意:NXSound 是一个包含名为“type”的 NXSoundType 属性的对象):
- (NXSoundType)nxSoundTypeFromIdentifier:(NSString*)nxSoundIdentifier {
NXSoundType type = NXSoundTypeNone;
for (NXSound *nxSound in self.nxSounds) {
if ([nxSound.identifier isEqualToString:nxSoundIdentifier]) {
type = nxSound.type;
}
}
return type;
}
到目前为止,一切顺利。但是以下调用不起作用:
NXSoundType type = [self nxSoundTypeFromIdentifier:@"kNXTargetGameSoundIdEffectTic"];
怎么了?先感谢您。