草庐IT

objective-c - 如何为 iOS 中的按钮添加声音?

我想在按下按钮时播放声音。此外,还有不止一种声音。我正在使用Xcode4.4.1和Storyboard。在.h文件中{IBOutletUIButton*playSound;} 最佳答案 我觉得写这个类型的例子会很有趣,所以我写了它。它演示了如何在按下按钮时播放不同的随机声音:-(IBAction)buttonPressedWithSound:(id)sender{intrandomSoundNumber=arc4random()%4;//randomnumberfrom0to3NSLog(@"randomsoundnumber=%i

swift - 同时播放 NSSound 多次

我需要在函数中插入一段代码,以便在调用时播放声音。问题在于调用函数的速度快于声音持续时间,因此播放声音的次数少于调用函数的时间。functionkeyDownSound(){NSSound(named:"tennis")?.play()}问题是NSSound仅在尚未播放时才开始播放。有什么解决办法吗? 最佳答案 问题的根源是init?(namedname:String)返回相同名称的相同NSSound实例。您可以复制NSSound实例,然后多个声音将同时播放:functionkeyDownSound(){NSSound(named:

Swift- 在 Cocoa 中播放系统默认声音的最简单方法(macOS、OS X)

我正在学习Cocoa编程。我只需要在我自己的Cocoa项目中完成或失败异步任务时播放声音。所以我想知道最简单的方法是什么。虽然应该很容易,但我还没有在Swift中找到它。提前致谢 最佳答案 最简单?将其放入项目的Swift文件中:Swift4.2到5.3importAppKitpublicextensionNSSound{staticletbasso=NSSound(named:.basso)staticletblow=NSSound(named:.blow)staticletbottle=NSSound(named:.bottle

swift - 将 NSSound 转换为 AVAudioPlayer

我有一些NSSound对象,我想将其转换为AVAudioPlayer实例。我有与NSSound对象关联的文件路径(NSURL),但原始文件可能不存在。这是我目前所拥有的:classSoundObj:NSObject{varpath:NSURL?varsound:NSSound?varplayer:AVAudioPlayer}letaSound=SoundObj()aSound.path=NSURL(fileURLWithPath:"file:///path/to/sound.m4a")aSound.sound=NSSound(contentsOfURL:aSound.path)!do{

swift - 将 NSSound 转换为 AVAudioPlayer

我有一些NSSound对象,我想将其转换为AVAudioPlayer实例。我有与NSSound对象关联的文件路径(NSURL),但原始文件可能不存在。这是我目前所拥有的:classSoundObj:NSObject{varpath:NSURL?varsound:NSSound?varplayer:AVAudioPlayer}letaSound=SoundObj()aSound.path=NSURL(fileURLWithPath:"file:///path/to/sound.m4a")aSound.sound=NSSound(contentsOfURL:aSound.path)!do{

swift - 如何制作 NSSound 循环

我正在尝试在XCode(在Swift中)上制作一个简单的应用程序来播放音频文件,然后无限循环播放。根据Apple'swebsite,我需要将varloops:Bool{getset}添加到我的代码中;但我不确定如何以不会出错的方式将其与我当前的代码结合起来。这是我目前所拥有的:letsong=NSSound(named:"song.mp3")?.play()varloops:Bool{getset} 最佳答案 这样试试://createaninstanceletsong=NSSound(named:"song.mp3")//set`