2014-04-28 5 views
0

Вот что я хочу достичь в своем приложении: у меня есть 3 меню на начальной странице: PLAY, INSTRUCTIONS, HIGH SCORE. У меня есть тема, играющая в фоновом режиме с помощью объекта MediaPlayer. Я просто хочу, чтобы музыка для темы воспроизводилась для меню PLAY и INSTRUCTIONS, без прерывания, т. Е. Если действие меняется с ГЛАВНОГО МЕНЮ на ИНСТРУКЦИИ и наоборот, музыка должна воспроизводиться непрерывно. Но музыка должна прекратиться, как только начнется действие PLAY. Я не знаю, как это сделать, но все, что я могу придумать, - это отправить объект MediaPlayer, который запустил тему музыки, в PLAY's oncreate и остановить ее там. Есть какой-либо способ сделать это?Переключение между двумя действиями и сохранение музыки

+0

Привет, его лучше использовать Singleton для медиаплеера и таким образом вы получите доступ к этому классу от каждого вида деятельности. смотрите здесь: http://stackoverflow.com/questions/12585720/how-to-use-the-singleton-pattern-in-an-android-project – SacreDeveloper

ответ

2

Вы хотите использовать Службу для воспроизведения музыки (и для этого отключить основной поток). Вот соответствующие страницы на

Services

Media playback

+0

Если я начну свою работу в режиме Main Menu, мне нужно будет остановить эта услуга в Play Play, так что мне понадобится объект сервиса, объявленный и инициализированный в главном меню в Play Play. Такая же проблема снова. Или есть другой способ? –

+0

Вы не объявляете и не инициализируете экземпляры Сервисов, как вы не делаете этого для Деяний (и других компонентов приложения). Android делает это для вас. Просто используйте методы startService и stopService в своих действиях. Если служба уже запущена, следующий запуск службы запускается на уже запущенную службу. – Karakuri

+0

Спасибо, он выглядит удовлетворительным, я думаю, мне нужно прочитать эти страницы, прежде чем я смогу прокомментировать что-нибудь еще. –

Смежные вопросы