更改音量没有一个iPhone上的音量滑块

更改音量没有一个iPhone上的音量滑块,第1张

概述我需要你的帮助.我应该如何继续更改我的应用程序中的音量.我不想使用音量滑块.相反,我有一个UI ImageView,它是一个音量旋钮,其中我顺时针旋转增加,反时针旋转以减少音量.旋转只是一个动画,我已经做了这一部分. 我需要你的帮助和建议,如何增加/减少音量.谢谢 我会小心在MPVolumeView上调用setValue,因为它可能不会更新滑块的外观,而不是实际的设备音量级别.你必须调用_comm 我需要你的帮助.我应该如何继续更改我的应用程序中的音量.我不想使用音量滑块.相反,我有一个UI ImageVIEw,它是一个音量旋钮,其中我顺时针旋转增加,反时针旋转以减少音量.旋转只是一个动画,我已经做了这一部分.

我需要你的帮助和建议,如何增加/减少音量.谢谢

解决方法 我会小心在MPVolumeVIEw上调用setValue,因为它可能不会更新滑块的外观,而不是实际的设备音量级别.你必须调用_commitVolumeChange这是私有API,并可能会让你的应用程序被拒绝.

一个简短的答案如何控制音量:这真的取决于你想要控制的音量.

如果你想要一个“控制应用程序中的每个声音”的控制,那么你可以使用MPVolumeVIEw,但是你不能以编程方式更改它的值.然后,您只能通过触摸滑块或使用设备侧面的音量按钮来更改音量.最好的做法是创建一个全局对象,用于存储任何对象在播放声音之前可以读取的音量.

如果它是一个AVAudioPlayer对象,您将创建该对象并使用[theAudioPlayerObject setVolume:somefloat];其中somefloat是0.0到1.0之间的值.

如果是SystemSound对象,则无法控制音量.

如果是AudioQueue,您可以通过AudioQueueSetParameter更改它

就像我说的,这一切都取决于你是如何演奏声音的.

更新基于评论

For that particular example,你可以这样设置音量:

Add to the AudioStreamer.h file

- (voID)setVolume:(float)Level;

Add to the AudioStreamer.m file

- (voID)setVolume:(float)Level{    Osstatus errorMsg = AudioQueueSetParameter(audioQueue,kAudioQueueParam_Volume,Level);    if (errorMsg) {        NSLog(@"AudioQueueSetParameter returned %d when setting the volume.",errorMsg);    }}

Add to the vIEw controller for where the volume knob will be (this goes in the .m file.. i just dID this as a couple UIbuttons real quick,you’ll have to do your own) and set up an IBAction to change the volume for a given value (you can pass in 0.0 thru 1.0 as a float)

- (IBAction)volumeUp:(ID)sender{    [streamer setVolume:1.0];}- (IBAction)volumeDown:(ID)sender{    [streamer setVolume:0.0];}
总结

以上是内存溢出为你收集整理的更改音量没有一个iPhone上的音量滑块全部内容,希望文章能够帮你解决更改音量没有一个iPhone上的音量滑块所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1085104.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存