Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 复选框偏好问题_Java_Android - Fatal编程技术网

Java 复选框偏好问题

Java 复选框偏好问题,java,android,Java,Android,我有个小问题。正如你所知道的那样 addPreferencesFromResource(R.xml.mypreference); 不推荐使用。如何存储复选框首选项,以便用户下次启动应用程序时可以看到复选框 这里没有人。 我的活动包含以下复选框: package com.example.program; import com.example.program.R; import android.os.Bundle; import android.app

我有个小问题。正如你所知道的那样

     addPreferencesFromResource(R.xml.mypreference);
不推荐使用。如何存储复选框首选项,以便用户下次启动应用程序时可以看到复选框

这里没有人。 我的活动包含以下复选框:

    package com.example.program;

    import com.example.program.R;

    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;
    import android.widget.CheckBox;
    import android.view.View.OnClickListener;

    public class JourneyActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.journey_select);

    final CheckBox checkBox = (CheckBox) findViewById(R.id.checkBox1);
    if (checkBox.isChecked()) {
        checkBox.setChecked(false);
    }

}



@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}


}
my program.xml文件:

<?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:id="@+id/menu1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bg"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".JourneyActivity" >


<CheckBox

    android:id="@+id/checkBox1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textView2"
    android:layout_below="@+id/textView2"
    android:text="@string/done1"
    android:textColor="@color/red" />





    </RelativeLayout>

忽略xml文件中可能出现的错误。 那么,当用户在活动中单击我的复选框1时,如何存储“单击”


谢谢。

在复选框上单击“将首选项另存为”

//设置和获取首选项数据的方法

//在选中复选框的侦听器上,实现它

然后在onCreate()中启动应用程序时,将首选项数据用作

   yourCheckBox.setChecked());

可能的解决方案:不工作。相信我,我什么都试过了,从12岁到现在都变了。那么,目的是什么?为11岁以下的设备显示PreferenceActivity,为较新的设备显示PreferenceFragment,或者仅通过代码绕过专用UI保存和读取SharedPreferes?
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        if (isChecked) {
             checkBoxSelected(true);
        } else {
             checkBoxSelected(false);
        }
    }
   yourCheckBox.setChecked());