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