gpt4 book ai didi

iphone - 如何制作 SystemSoundID 数组

转载 作者:搜寻专家 更新时间:2023-10-30 19:59:06 24 4
gpt4 key购买 nike

我似乎无法弄清楚。

我可以用以下方式播放一种声音:

- (void) initSounds {
// Get the main bundle for the app
CFBundleRef mainBundle;
mainBundle = CFBundleGetMainBundle ();
// Get the URL to the sound file to play
soundFileURLRef = CFBundleCopyResourceURL (mainBundle,CFSTR ("1"),CFSTR ("wav"),NULL);

// Create a system sound object representing the sound file
AudioServicesCreateSystemSoundID (soundFileURLRef, &soundFileObject);
}

-(void) play {
AudioServicesPlaySystemSound(self.soundFileObject);
}

但我想创建一个 SystemSoundID 对象数组。当我尝试这样做时,我不断收到错误。谁能告诉我创建 soundFileObjects 数组的代码以及我如何在 AudioServicesPlaySystemSound 中使用该数组?

最佳答案

SystemSoundID 是一个完整的非类类型,因此您需要使用像 NSNumber 这样的包装器将其存储在像 NSArray 这样的 Cocoa 容器中:

// assuming this property:
@property (copy) NSArray *soundFileObjects;

// creating the array:
soundFileObjects = [[NSArray alloc] initWithObjects:
[NSNumber numberWithUnsignedLong:soundId],
// more ?
nil];

// using it, e.g.:
SystemSoundID sid = [[self.soundFileObjects objectAtIndex:0] unsignedLongValue];
AudioServicesPlaySystemSound(sid);

关于iphone - 如何制作 SystemSoundID 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3220222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com