我有一个 Android 应用程序,在我的主要 Activity 中,我可以在 onCreate() 上播放音乐,在 Pause() 上暂停音乐并在 Resume() 上重新启动音乐。我正在使用媒体播放器。问题是当我在主要 Activity 中旋转屏幕时,我不希望音乐重新启动 onResume() 。当我从另一个 Activity 返回到我的主要 Activity 时,我只希望音乐重新开始。有什么建议吗?
private MediaPlayer mp;
mp = MediaPlayer.create(MainActivity.this, R.raw.always_sunny); mp.setLooping(true); mp.start();
@Override protected void onPause() { super.onPause(); mp.getCurrentPosition(); mp.pause(); } @Override protected void onResume() { super.onResume(); mp.seekTo(0); mp.start(); }
最佳答案
将以下属性添加到 list 中的 Activity :
android:configChanges="keyboardHidden|orientation|screenSize"
这将避免 Activity 在方向更改或键盘出现时重新启动。
如果您需要在旋转发生变化时执行某些操作(例如,在您的案例中更改图像),请将以下方法添加到您的 Activity 中:
@Override
public void onConfigurationChanged (Configuration newConfig) {
// Change here your image
}
关于Android:在新 Activity 上暂停和重新启动音频,但在屏幕旋转时暂停和恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10964407/