存储应用程序首选项Android

时间:2010-07-08 12:49:32

标签: 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 个答案:

答案 0 :(得分: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();
    }
}