У меня есть медиапланер в моих настройках, который воспроизводит песню, когда включена кнопка переключения. Он отлично работает, и когда действие меняется, музыка продолжает воспроизводиться, и это то, что я хочу. Проблема в том, что когда я снова вернусь к активности настроек, кнопка переключения отключена и один раз щелкнет, она запустит новый медиаплеер, который играет рядом с текущим. В любом случае, чтобы он помнил, что оригинальный медиаплеер включен?Сохранить состояние медиапланера между действиями
public class Settings extends AppCompatActivity {
public MediaPlayer mp = null;
private SeekBar volumeSeekbar = null;
private AudioManager audioManager = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
initControls();
Button b = (Button) findViewById(R.id.toggleButton);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Spinner spinner = (Spinner) findViewById(R.id.spinner);
String text = spinner.getSelectedItem().toString();
if (mp == null) {
int song = getResources().getIdentifier(text, "raw", "com.example.dan14.memorygame");
mp = MediaPlayer.create(Settings.this, song);
mp.start();
} else {
mp.stop();
mp = null;
}
}
});
}
спасибо !! Это работает, но я просто должен сохранить состояние кнопки, теперь она меняет направление, когда я перезапускаю второе действие. например, я нажимаю кнопку «Воспроизвести», а затем меняю активность, но музыка остается на том, что хорошо, но как только я вернусь к активности настроек, кнопка отключена, но после нажатия она говорит, но останавливает музыку! – Haldamir
@ Haldamir После 'Button b = (Button) findViewById (R.id.toggleButton);', измените состояние своей кнопки в соответствии с 'mp == null'. – lin
Спасибо! Я просто установил состояние кнопки, используя onPause и onResume :) – Haldamir