Android - CheckBox Not Saving check State

时间:2015-02-05 05:20:02

标签: javascript android

我目前在我的代码中使用点击监听器实现了一个复选框。点击监听器只是拉取我的共享首选项并保存它们,以便它们可以在重新启动时应用(通过服务)。

我想知道如何修改以下代码以便记住" State"的复选框。

setboot.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this, "Applied on boot", Toast.LENGTH_SHORT).show();

        new Thread(new Runnable() {
            @Override
            public void run() {
                android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_BACKGROUND);

                HashM hash2 = new HashM();
                hash2.getPrefs(MainActivity.this);

            }

        }).start();

    }
});

1 个答案:

答案 0 :(得分:1)

您可以创建一个跟踪"状态"的类变量。 CheckBox(我假设"州"这里意味着如果点击复选框) boolean ischeckboxcheck= false;

接下来,使用下面的代码来获取复选框的状态。

setboot = (CheckBox) findViewById(R.id.checkbox);       
ischeckboxcheck = setboot.isChecked();

现在,你有一个"州"复选框。
然后,将此状态信息复制到您的共享首选项对象中,如下所示:
mySharedPreference.edit().putBoolean("checkboxvalue", ischeckboxcheck);

稍后,您应该能够通过共享偏好对象阅读"使用键"复选框值"来自您的共享偏好的状态信息如下:

mySharedPreference.getBoolean("checkboxvalue", false)