Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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
Android 从其他活动获取SharedReferences值_Android_Sharedpreferences - Fatal编程技术网

Android 从其他活动获取SharedReferences值

Android 从其他活动获取SharedReferences值,android,sharedpreferences,Android,Sharedpreferences,如何从其他活动中读取SharedReferences值 当我选择先开始哪项活动时,我得到了setting.cals,效果非常好 如何读取其他活动的首选项 final SharedPreferences settings = getPreferences(MODE_PRIVATE); int choice = settings.getInt("language", -1); 打开对话框3活动: String[] activities = { "Activity 1", "

如何从其他活动中读取SharedReferences值

当我选择先开始哪项活动时,我得到了setting.cals,效果非常好

如何读取其他活动的首选项

    final SharedPreferences settings = getPreferences(MODE_PRIVATE);
    int choice = settings.getInt("language", -1);
打开对话框3活动:

    String[] activities = { "Activity 1", "Activity 2", "Activity 3" };
OnClick:

            @Override
            public void onClick(DialogInterface dialog, int which) {
                SharedPreferences.Editor editor = settings.edit();
                editor.putInt("language", which);
                editor.commit();
                launchActivity(which);
            }
            }).show();
    } else {
        // start the activity and close this activity
        launchActivity(choice);
    }
}
关于代码隐藏

SharedPreferences prefs = this.getSharedPreferences("title",Context.MODE_PRIVATE);
String LanSettining = prefs.getString("language", null);
您还可以使用以下代码:

设置:

阅读:

关于代码隐藏

SharedPreferences prefs = this.getSharedPreferences("title",Context.MODE_PRIVATE);
String LanSettining = prefs.getString("language", null);
您还可以使用以下代码:

设置:

阅读:


错误表示:类型PreferenceManager中的方法GetDefaultSharedReferences(Context)不适用于参数(new DialogInterface.OnClickListener(){}),您需要提供活动的上下文,而不是对话框的上下文。只需在那里写下:ActivityName。这代替上下文。我非常感谢Sandy的帮助,但它总是启动主要活动,而不是我选择的活动。。我已经存储了一个首选项,但我需要从MainActivity中读取它。那么您一定犯了一些小错误。请尝试打印共享首选项的值,并查看它是否已存储。是的,因为当我打开setting.class时,选择了activity3重定向到activity3。错误是:类型首选项管理器中的方法GetDefaultSharedReferences(Context)不适用于参数(new DialogInterface.OnClickListener(){})您需要给出活动的上下文,而不是对话框的上下文。只需在那里写下:ActivityName。这代替上下文。我非常感谢Sandy的帮助,但它总是启动主要活动,而不是我选择的活动。。我已经存储了一个首选项,但我需要从MainActivity中读取它。那么您一定犯了一些小错误。请尝试打印共享首选项的值,并查看是否已存储该值。是的,因为当我打开setting.class时,选择了activity3并重定向到activity3
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
String language = settings.getString("language", "");