2012-06-01 3 views
1

Как установить параметр Mute в музыкальном проигрывателе Android из исходного кода? Пожалуйста, помогите мне. Это мой код. Пожалуйста, проверьте его и дайте мне свои идеи.Как установить опцию отключения звука в музыкальном проигрывателе Android с исходным кодом

mute.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      if(mute.isPressed()) 

       //audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT); 

       mp.setVolume(0,0); 

     else if(mute.isPressed()) 
       mp.setVolume(0, 1); 
     } 
    });  
+1

Вам не нужны фигурные скобки в инструкции if, а если инструкция if (mute.isPressed()) {mp.setVolume (0,0);} ...? – dshapiro

+1

Посмотрите на комментарий Даниила, кроме того, вы проверяете одно и то же условие как в случае, так и в случае if. – Orlymee

+1

http://stackoverflow.com/questions/4573667/how-to-mute-mediaplayer-in-android –

ответ

0
if(!mute.isPressed()) you forgot ! in else if ............. 


in both if it is mute.isPressed() ........... 


and would be better 

    if(mute.isPressed()){ 
     mp.setVolume(0,0); 
    } 
    else{ 
     mp.setVolume(0, 1); 
    } 

потому mute.isPressed() является булевой, если это не так, так не нужно, чтобы проверить это должно быть ложным .........

можно использовать код ImageView Button Toggle in Android

для вас:

final ImageView button01 = (ImageView) findViewById(R.id.button01); 

    button01.setOnClickListener(new OnClickListener() { 
     boolean isPressed = false; 
     public void onClick(View v) { 
      if (isPressed) { 
       //button01.setImageResource(R.drawable.image01);. 
       mp.setVolume(0,0); 
      } else { 
       //button01.setImageResource(R.drawable.image02);. 
       mp.setVolume(0,1); 
      } 
      isPressed = !isPressed ; 
     } 
    }); 

................................... ....................................... ................

alternative answer : 

давайте это межжала :)

button01.setOnClickListener(new OnClickListener() { 
     int state = 0; 
     public void onClick(View v) { 
      state = (state+1)%2; 
      mp.setVolume(0,state); 
     } 
    }); 

выглядит хорошо?

+0

mute - кнопка изображения, нажимающая означает, что громкость отключена, как я могу снова отпустить кнопку? его снова я нажимаю не выпускать, пожалуйста, помогите. – user1427548

+0

ooh k ..... вы используете другое изображение для отключения звука и отключения звука ... –

+0

Существуют различные логические для этого. например: 1- переключение тега каждый раз, когда mute.setTag («true»)/mute.setTag («false») on onClick 2- держит bolean и переключается в onClick 3- получает изображение, которое в настоящее время показывает немой или unmute. ........ –

0

Похоже, что вы хотите попробовать

mute.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View v) { 
     if(mute.isPressed()){ 
      mp.setVolume(0,0); 
     } 
     else if(!mute.isPressed()){ 
      mp.setVolume(0, 1); 
     } 
    }}); 

Проблемы были, что вы не имели надлежащего брекетинг, и что вы не проверяли правильное выражение в вашей еще, если заявление. Сообщите нам, как это работает для вас.

+0

та же проблема, когда я нажимаю mute, снова работает, как я могу его отпустить. снова я нажимаю, звук не включен. Я объявляю любую переменную? как истина и ложь. – user1427548

+0

Итак, проблема заключается в том, что вы нажимаете кнопку отключения звука один раз, и громкость отключается, как ожидалось, но затем вы снова отжимаете звук и громкость остается отключенной? Попробуйте использовать 'setOnItemClickListener' вместо' setOnClickListener'. Не уверен, что это исправит вашу проблему, но стоит попробовать. – dshapiro