概述
我的列表视图中有一个项目列表。单击任何项目时,将启动下一个活动,在该活动中,无线电组中的编辑文本和三个单选按钮很少。我将这些单选按钮命名为“现在”,“缺席”和“#39;并且'转移'。
问题和我想要实现的目标
现在我设法保存了单选按钮的状态,这样如果选中任何单选按钮然后活动关闭,那么将保存单选按钮状态。但是我的问题是每当活动关闭时存储值,所有列表视图项都会将其radiobutton状态更改为该已保存状态。
问题解释与示例
假设我的列表视图中有三个项目是教师。 A,B和C. 当我点击项目A时,活动名为'出勤'开始。类似地,当我点击B或C然后活动出勤开始。现在,如果我点击项目A并将出勤标记为出现并保存状态,那么当我打开项目B或项目C时它将告诉我现在虽然我没有改变项目B或C中的值。我只是存储了项目A的值,但它也显示了项目B和C中的更改。我不知道该怎么做保存每个列表视图项的单选按钮状态的案例
我尝试过什么
这就是我在Attendance活动中使用Oncreate方法所做的事情。
SharedPreferences settings = getSharedPreferences("answers", MODE_PRIVATE);
boolean r2achecked = settings.getBoolean("r2a",false);
boolean r2bchecked = settings.getBoolean("r2b",false);
boolean r2cchecked = settings.getBoolean("r2c",false);
if (r2achecked == true)
{
one.setChecked(true);
}
else if (r2bchecked == true)
{
two.setChecked(true);
}
if (r2cchecked == true)
{
three.setChecked(true);
}
我正在考勤活动中保存单选按钮的状态
save.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SharedPreferences settings = getSharedPreferences("answers", MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("r2a",one.isChecked());
editor.putBoolean("r2b",two.isChecked());
editor.putBoolean("r2c",three.isChecked());
editor.apply();
finish();
}
请帮助任何人