【发布时间】:2011-03-08 21:10:51
【问题描述】:
我有一个音板 它只是一个带有大约 8 个按钮的屏幕。 每个单独的按钮都有自己的声音,在按钮按下时播放 有几种方法可以播放声音,例如使用 SystemSound 或 AVAudioPlayer 到目前为止,系统声音似乎具有最快的响应时间,avaudioplayer 很慢,如果用户真的快速点击按钮,它就跟不上,我为每个声音都创建了一个音频播放器,这很混乱。 这就是我现在播放声音的方式 .h 文件
@interface MainScreenViewController : UIViewController <AVAudioPlayerDelegate, UITabBarControllerDelegate> {
AVAudioPlayer *player;
CFURLRef keNURL;
SystemSoundID keNObject;
//KE LOUD
CFURLRef keLURL;
SystemSoundID keLObject;
//GE NORMAL
CFURLRef geNURL;
SystemSoundID geNObject;
//GE LOUD
CFURLRef geLURL;
SystemSoundID geLObject;
//NA NORMAL
CFURLRef naNURL;
SystemSoundID naNObject;
//NA LOUD
CFURLRef naLURL;
SystemSoundID naLObject;
//RA
CFURLRef raURL;
SystemSoundID raObject;
//DAGGA CLICK
CFURLRef daCURL;
SystemSoundID daCObject;
//TILLI CLICK
CFURLRef tiCURL;
SystemSoundID tiCObject;
}
@property (nonatomic, retain) AVAudioPlayer *player;
@property (readwrite) CFURLRef keNURL;
@property (readonly) SystemSoundID keNObject;
@property (readwrite) CFURLRef keLURL;
@property (readonly) SystemSoundID keLObject;
@property (readwrite) CFURLRef geNURL;
@property (readonly) SystemSoundID geNObject;
@property (readwrite) CFURLRef geLURL;
@property (readonly) SystemSoundID geLObject;
@property (readwrite) CFURLRef naNURL;
@property (readonly) SystemSoundID naNObject;
@property (readwrite) CFURLRef naLURL;
@property (readonly) SystemSoundID naLObject;
@property (readwrite) CFURLRef raURL;
@property (readonly) SystemSoundID raObject;
@property (readwrite) CFURLRef daCURL;
@property (readonly) SystemSoundID daCObject;
@property (readwrite) CFURLRef tiCURL;
@property (readonly) SystemSoundID tiCObject;
}
然后播放个人声音的动作
然后是.m文件,在导入.h文件和正确的框架工作并综合所有变量后,编写动作代码 这就是个人行动中的内容。
-(IBAction)geSound{
AudioServicesPlaySystemSound (self.geNObject);
}
我只是想知道 systemsound 是否是我创建音板的前进方向。 尤其是当用户在节拍之间快速交替敲击板时。 . 如果不是,播放响应非常好的声音的最佳方式是什么?
【问题讨论】:
-
Xcode 只是一个 IDE - 你大概在谈论 Mac OS X (Cocoa) 或 iPhone (CocoaTouch)?
-
我回答了我自己的问题。往下看。
标签: iphone objective-c ios audio uibutton