【问题标题】:AVAudioPlayer setVolume - How?AVAudioPlayer setVolume - 如何?
【发布时间】:2013-02-28 07:13:13
【问题描述】:

有谁知道在我的应用上静音游戏声音的最佳方法。

我目前正在使用 SystemSoundID,我知道它无法调整音量,需要移至 AVAudioPlayer。

理想情况下,我需要一个可以更改音量并保存音量级别的设置页面,以便在返回或离开并重新打开应用程序时记住音量级别?

我使用 AVAudioPlayer 尝试了各种方法,但目前没有成功,我的应用收到了一些差评,因为人们说他们讨厌无法控制游戏音量...帮助!!

【问题讨论】:

    标签: ios objective-c avaudioplayer


    【解决方案1】:

    对于 AVAudioPlayer,您可以使用此代码静音

    在.h文件中

    @interface ViewController : UIViewController
    {
        BOOL muted;
    }
    

    在.m文件中

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        muted = NO;
    }
    
    - (IBAction)speakerOnOff:(id)sender
    {
    
        if (muted) {
            muted = NO;
            [player setVolume:1.0];
        } else {
            muted = YES;
            [player setVolume:0.0];
        }
    }
    

    此代码来自this 很好的答案。

    【讨论】:

    • 我以前试过这个。但它似乎不记得了,所以每次它加载一个不同的 ViewController 时都会忽略它并以最大音量播放?
    • 现在检查我的答案,现在你的 vc 会记住 muted 的值并进行相应的更改。
    • 有没有更好的方法,所以我可以使用音量滑块,这样他们就可以将音量控制在他们想要的水平?
    • 我认为这适用于所有 VC。因此,如果他们在主页上将其静音,所有其他 VC 都会知道音量是多少?
    • 它只记住一个 VC 上的静音选项。所有其他 VC 仍在播放声音
    猜你喜欢
    • 1970-01-01
    • 2011-07-10
    • 2012-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-29
    • 1970-01-01
    相关资源
    最近更新 更多