【发布时间】:2012-07-10 07:54:47
【问题描述】:
我的 iPhone 应用程序出现声音问题。 我有一个 UISlider 对象,用于调整音量。
当它出现时,我使用基于以下行的代码来设置滑块的初始值:
AudioSessionGetProperty ('chov',&dataSize,&volume);
而且效果很好。然后,当我激活设备的硬件音量按钮时,我希望滑块相应地移动。 但是这部分基于这种代码:
AudioSessionPropertyID volumeChangeID=kAudioSessionProperty_CurrentHardwareOutputVolume;
AudioSessionAddPropertyListener(volumeChangeID,handleSoundVolume,self);
效果不太好。 我可以看到回调函数:handleSoundVolume 仅在播放某些声音时才被调用,否则不会被调用。 另一方面,AudioSessionGetProperty 提供的值始终是正确的,与声音播放与否无关。 这是为什么呢?
我认为 AudioSessionGetProperty 和 AudioSessionAddPropertyListener 是“一起”工作的,但事实并非如此。
看看iPod touch上默认的Music应用,看来我想做的事情还是很有可能的。
感谢您提供任何信息。
【问题讨论】:
标签: core-audio avaudioplayer audio