我目前在我的代码中实现了一个带有点击监听器的复选框。单击监听器只是提取我的共享首选项并保存它们,以便可以在重新启动时应用它们(通过服务)。
我想知道如何修改以下代码以记住复选框的“状态”。
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();
}
});
最佳答案
您可以创建一个类变量来跟踪复选框的“状态”(我假设这里的“状态”是指复选框是否被单击)。
boolean ischeckboxcheck= false;
接下来,使用以下代码获取复选框的状态。
setboot = (CheckBox) findViewById(R.id.checkbox);
ischeckboxcheck = setboot.isChecked();
现在,您有了复选框的“状态”。
然后,将此状态信息复制到您的共享首选项对象中,如下所示:
mySharedPreference.edit().putBoolean("checkboxvalue", ischeckboxcheck);
稍后,从您的共享首选项对象中,您应该能够使用键“checkboxvalue”从您的共享首选项“读取”状态信息,如下所示:
mySharedPreference.getBoolean("checkboxvalue", false)
关于javascript - Android - 复选框不保存检查状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28336709/