Android 保存复选框的状态

Android 保存复选框的状态,android,checkbox,save,Android,Checkbox,Save,我的申请有问题。我有一个带有复选框的应用程序。我怎样才能拯救他们 我的布局是: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:paddingBottom="@dime

我的申请有问题。我有一个带有复选框的应用程序。我怎样才能拯救他们

我的布局是:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >


<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="10dp"
    android:textSize="20dp"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Switzerland" />
<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="35dp"
    android:textSize="14dp"
    android:textColor="#545454"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Bern" />


<CheckBox
    android:id="@+id/itemCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="20dp"
    android:layout_alignParentRight="true"
    android:gravity="right" />


<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="80dp"
    android:textSize="20dp"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Germany" />
<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="105dp"
    android:textSize="14dp"
    android:textColor="#545454"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Berlin" />



<CheckBox
    android:id="@+id/itemCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="90dp"
    android:layout_alignParentRight="true"
    android:gravity="right" />

<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="150dp"
    android:textSize="20dp"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Great Britain" />
<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="175dp"
    android:textSize="14dp"
    android:textColor="#545454"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="London" />



<CheckBox
    android:id="@+id/itemCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="160dp"
    android:layout_alignParentRight="true"
    android:gravity="right" />

<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="220dp"
    android:textSize="20dp"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="France" />
<TextView
    android:id="@+id/lstvw_textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginTop="245dp"
    android:textSize="14dp"
    android:textColor="#545454"
    android:layout_toLeftOf="@+id/itemCheckBox"
    android:padding="8dp"
    android:text="Paris" />



<CheckBox
    android:id="@+id/itemCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="230dp"
    android:layout_alignParentRight="true"
    android:gravity="right" />

</RelativeLayout>
你现在知道怎么做了吗


我希望你能理解我,也希望你能帮助我。

使用SharedReferences将复选框存储为布尔值

比如:

SharedPreferences sharedPreferences = PreferencesManager.getDefaultSharedPreferences(this);
checkBoxDummy.setChecked(sharedPreferences.getBoolean("checkBoxDummy", false));
checkBoxDummy.setOnCheckedChangeListener(new OnCheckedChangeListener() {
    public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
        sharedPreferences.putBoolean("checkBoxDummy", isChecked);
    }
});
要存储值,请使用侦听器。比如:

SharedPreferences sharedPreferences = PreferencesManager.getDefaultSharedPreferences(this);
checkBoxDummy.setChecked(sharedPreferences.getBoolean("checkBoxDummy", false));
checkBoxDummy.setOnCheckedChangeListener(new OnCheckedChangeListener() {
    public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
        sharedPreferences.putBoolean("checkBoxDummy", isChecked);
    }
});

您是否需要将它们保存在内存中或保存到磁盘(并从中重新加载)将它们存储到共享首选项中,并在设置打开后或需要时读取它们我需要保存它们,关闭应用程序,然后打开相同的设置。你能帮我了解一下共享的首选项吗?(你能重写代码吗?)事实上,你已经拥有了自己做这件事所需要的一切。基本上只是复制/过去