2014-09-02 25 views
0

我的应用程序中有一个MediaPlayer,它开始在主菜单上播放,并且该活动始终打开。它是使用下面的代码创建:如何更改不同活动中的MediaPlayer音量

mp = MediaPlayer.create(MainActivity.this, R.raw.relaxedmusic); 
    mp.start(); 
    mp.setVolume(1, 1); 
    mp.setLooping(true); 

MediaPlayer,“MP”,一直扮演新的活动打开和关闭,并与下面的代码静音:

public void onPause() { 
    super.onPause(); 
    if (musicThroughActivity == 1) { 
     mp.setVolume(1, 1); 
    } else if (musicThroughActivity == 0) { 
     mp.setVolume(0, 0); 
    } 

} 

public void onStop() { 
    super.onStop(); 
    if (musicThroughActivity == 1) { 
     mp.setVolume(1, 1); 
    } else if (musicThroughActivity == 0) { 
     mp.setVolume(0, 0); 
    } 

} 

但是,如果用户从另一活动退出应用程序(例如,打开项目1的活动打开时的主页按钮),音乐继续播放。有什么方法可以将MediaPlayer的音量从与其创建位置不同的活动更改为?

所有帮助表示赞赏。

+0

在您的活动中添加MediaPlayer的静态引用或使用单例类 – 2014-09-02 17:46:48

+0

如何添加静态引用?编辑:我使用谷歌搜索,没有什么了。 – 2014-09-02 17:59:48

+0

看我的答案@Isaac – 2014-09-02 18:04:27

回答

0

在你的活动添加您的MediaPlayer的静态引用,或者如果你想添加一个静态引用,发现在你的代码行

MediaPlayer mp; 

,并改变它使用一个单独的类

public static MediaPlayer mp; 

然后从任何活动,你可以拨打

MainActivity.mp.setVolume(1, 1); 
+0

这工作非常好:)谢谢! – 2014-09-02 20:25:17

相关问题