Android 在java中,我们可以在一个方法中调用两个不同的共享首选项数据吗?

Android 在java中,我们可以在一个方法中调用两个不同的共享首选项数据吗?,android,parse-platform,Android,Parse Platform,是的,你可以。只需使用首选项名称来唯一地寻址它们 SharedPreferences preferences_type = PreferenceManager.getDefaultSharedPreferences(this); String preferences_typename = preferences_type.getString("name", sname); String preferences_typeSocietyname = preferences_type.getStrin

是的,你可以。只需使用首选项名称来唯一地寻址它们

SharedPreferences preferences_type = PreferenceManager.getDefaultSharedPreferences(this);
String preferences_typename = preferences_type.getString("name", sname);
String preferences_typeSocietyname = preferences_type.getString("societyname", ssociety);
String preferences_typeFlatno = preferences_type.getString("Flatnumber", sflat);
//Toast.makeText(MainActivity.this,"name"+preferences_typeS,Toast.LENGTH_LONG).show();
name.setText(preferences_typename);
society.setText(preferences_typeSocietyname);
Flatno.setText(preferences_typeFlatno);

SharedPreferences shre = PreferenceManager.getDefaultSharedPreferences(this);
String previouslyEncodedImage = shre.getString("image_data", "");

    if( !previouslyEncodedImage.equalsIgnoreCase("") ){
        byte[] b = Base64.decode(previouslyEncodedImage, Base64.DEFAULT);
        Bitmap bitmap = BitmapFactory.decodeByteArray(b, 0, b.length);
        profileImage.setImageBitmap(bitmap);
        //profileImage.setImageResource(ContextCompat.getDrawable(this, profileImage);
    }
通过引用创建SharedReference时提供的名称,可以在任何需要的地方唯一地检索该数据

//create shared preference 1 where you want
SharedPreferences data1 = this.getSharedPreferences("pref1", 0);
   //put some data
   SharedPreferences.Editor editor = data1.edit();
   editor.putString("string1", "some string");
   editor.commit();

//create shared preference 2 where you want
SharedPreferences data2 = this.getSharedPreferences("pref2", 0);
   //put some another data
   SharedPreferences.Editor editor = data2.edit();
   editor.putString("string2", "some another string");
   editor.commit();

希望这能有所帮助。

是的,你可以。你有什么问题吗?你可以打电话,但你想解决的是什么,你需要什么?我想从SharedReferences获取数据。一个来自活动一,另一个来自另一个frm活动二,现在在另一个公共区域分别称它们activity@PreetikaKaur请告诉我如何在singl活动中调用它们。您的SharedReference文件是相同的还是不同的?
SharedPreferences somedata1 = this.getSharedPreferences("pref1", 0);
    String someStr1 = somedata1.getString("string1", "default");
    // use data

SharedPreferences somedata2 = this.getSharedPreferences("pref2", 0);
    String someStr1 = somedata1.getString("string2", "default");
    // use data