2017-04-16 55 views
2

如何從其他活動編輯sharedPreference的值。我嘗試這個代碼,我得到上下文部分的錯誤。在其他活動中編輯共享偏好

if(stars == 2){ 

    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); 
    SharedPreferences.Editor editor = scorepref.edit(); 
    editor.putInt("keyhelloworld", stars); 
    editor.commit(); 
    Intent fromHW = new Intent(HelloWorldGameActivity.this, LessonActivity.class); 
    startActivity(fromHW); 
} 

回答

1

試試這個。 從第一個活動傳遞上下文。

要調用共享偏好

SharedPreferences sharedPreferences = context.getSharedPreferences("myPrefs", Context.MODE_PRIVATE); 

要調用編輯

SharedPreferences.Editor editor = context.getSharedPreferences("myPrefs", Context.MODE_PRIVATE).edit(); 
+0

這一個作品謝謝你的傢伙:) – xhen

1

您可以使用SharedPreferences如下。由於sharedpreferences是持久的,您可以在應用程序的任何位置使用相同的實現來訪問它。

SharedPreference sharedPreferences = getApplicationContext().getSharedPreferences("MyPreferences", Context.MODE_PRIVATE); 
sharedPreferences.edit().putString("key", value).apply();