Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.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 无法取回保存在SharedReference中的数据_Java_Android_Sharedpreferences - Fatal编程技术网

Java 无法取回保存在SharedReference中的数据

Java 无法取回保存在SharedReference中的数据,java,android,sharedpreferences,Java,Android,Sharedpreferences,这是我的活动2,我应该在这里创建SharedReference并保存用户的选择。(我想将用户的选择保存在一个组中) 请参阅我的活动3,在那里我应该返回选项: private RadioGroup rgTravel; SharedPreferences sharedPreferences; private static final String PREFS = "PREFS"; private static final String Travel = "travel"; private Radio

这是我的活动2,我应该在这里创建SharedReference并保存用户的选择。(我想将用户的选择保存在一个组中) 请参阅我的活动3,在那里我应该返回选项:

private RadioGroup rgTravel;
SharedPreferences sharedPreferences;
private static final String PREFS = "PREFS";
private static final String Travel = "travel";
private RadioButton radioButton;
String travel;

@Override
protected void onCreate(Bundle savedInstanceState) {


    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_activity2);


    final Button btnOk = (Button)findViewById(R.id.btnOk);
    btnOk.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Intent activity3 = new Intent(MainActivity2Activity.this, MainActivity3Activity.class);


            rgTravel = (RadioGroup) findViewById(R.id.rgTravel);
            int selectedId = rgTravel.getCheckedRadioButtonId();
            radioButton = (RadioButton) findViewById(selectedId);
            travel = radioButton.getText().toString();

            SharedPreferences preferences-= PreferenceManager.getDefaultSharedPreferences(MainActivity2Activity.this);
            SharedPreferences.Editor editor = preferences.edit();
            editor.putString(Travel, travel);
            editor.commit();


            Toast.makeText(getApplicationContext(), travel, Toast.LENGTH_LONG).show();
            startActivity(activity3);

        }

    });
}

我在每个活动中都创建了一个祝酒词,以确保问题确实与偏好有关,而不是与另一个步骤有关。

应该是
travel
而不是
travel
,因为它区分大小写

在下一个活动中使用

public void onCreate(Bundle savedInstanceState) {

    String choice;
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_activity3);

        SharedPreferences PREFS = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
        choice = PREFS.getString("Travel", "Beach");
        Toast.makeText(getApplicationContext(), choice, Toast.LENGTH_LONG).show();
        displayPicture(choice);


        Button next = (Button) findViewById(R.id.button3);
        next.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent activity4 = new Intent(MainActivity3Activity.this, MainActivity4Activity.class);
                startActivity(activity4);
            }
        });
    }
而不是

choice = PREFS.getString("travel", "Beach");

它应该是
travel
而不是
travel
,因为它区分大小写

在下一个活动中使用

public void onCreate(Bundle savedInstanceState) {

    String choice;
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main_activity3);

        SharedPreferences PREFS = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
        choice = PREFS.getString("Travel", "Beach");
        Toast.makeText(getApplicationContext(), choice, Toast.LENGTH_LONG).show();
        displayPicture(choice);


        Button next = (Button) findViewById(R.id.button3);
        next.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent activity4 = new Intent(MainActivity3Activity.this, MainActivity4Activity.class);
                startActivity(activity4);
            }
        });
    }
而不是

choice = PREFS.getString("travel", "Beach");

我很高兴我能帮上忙,我很高兴我能帮上忙,我很高兴你应该把帕夫尼特·辛格的答案标记为正确。这是他答案旁边的复选标记。你应该把帕夫尼特·辛格的答案标记为正确。这是他答案旁边的复选标记。