Android Studio - 如何在重新启动应用程序后检查Switch

时间:2014-07-22 13:21:56

标签: android sdk switch-statement

我的片段只有一个切换开关。 应用程序现在正在做什么:用户打开应用程序并在导航抽屉上选择“笔记本电脑”,然后他看到一个开关(它是一个“滑块”,您可以打开或关闭...希望您了解我的内容意思)。用户将开关设置为ON然后关闭应用程序并重新打开它并且开关关闭......但它不应该关闭...它应该打开,就像用户设置它一样 我怎样才能做到这一点?交换机应保存其状态,用户如何选择它 我需要mysql还是什么?

我希望你明白我的意思

由于

1 个答案:

答案 0 :(得分:0)

你应该像这样使用SharedPreferences:

 public static final String SWITCH_PREFS = "Switcher";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.your_layout);

        Switch switcher = (Switch)findViewById(R.id.yourSwitchId);
        switcher.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(yourContext).edit();
                editor.putBoolean(SWITCH_PREFS,isChecked);
                editor.commit();
            }
        });
        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(yourContext);
        if(prefs.contains(SWITCH_PREFS) && switcher != null)
        {
            switcher.setChecked(prefs.getBoolean(SWITCH_PREFS,false));
        }

    }

没有尝试过这段代码,但希望这会有效。