2010-07-08 5 views
1

Я добавил кнопку отключения звука в меню в своем приложении, и мне интересно, можно ли сохранить последнее предпочтение пользователя приглушенным или отключенным для использования при повторном открытии приложения.Заявка на использование магазина Android

Вот код, я использую для настройки отключения звука или umute:

public void isMute() { 

     if(mIsMute){  
      mAm.setStreamMute(AudioManager.STREAM_MUSIC, false); 
      mIsMute = false; 

     }else{ 
      mAm.setStreamMute(AudioManager.STREAM_MUSIC, true); 
      mIsMute = true; 
     } 
    } 

ответ

1

Использование SharedPreferences для сохранения состояния. Прочтите его, когда приложение запускается и устанавливает текущее состояние.

Я изменил немного пример из android documentation

public class Calc extends Activity { 
    public static final String PREFS_NAME = "MyPrefsFile"; 

    @Override 
    protected void onCreate(Bundle state){   
     super.onCreate(state); 
     . . . 

     // Restore preferences 
     SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
     mIsMute = settings.getBoolean("IsMute", false); 
     isMute(); 
    } 

    @Override 
    protected void onStop(){ 
     super.onStop(); 

     // We need an Editor object to make preference changes. 
     // All objects are from android.context.Context 
     SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
     SharedPreferences.Editor editor = settings.edit(); 
     editor.putBoolean("IsMute", mIsMute); 

     // Commit the edits! 
     editor.commit(); 
    } 
} 
+0

Я не знаю, как это сделать. Я обновил свой оригинальный вопрос своим методом, который отключает звук или отключает звук. Мне нужно сохранить результат в SharePreferences и позвонить, чтобы узнать, что есть в моем init()? – taraloca

+0

Я обновил свой ответ –

+0

Во-первых, спасибо за вашу помощь ... У меня это работает. По-разному я имею в виду, что каждый раз, когда я запускаю свое приложение, он отключается, даже если я закрыл приложение, пока не был отключен. Я попытался переключить значение в putBoolean безрезультатно. Есть идеи? – taraloca

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