(新手)有人可以给我一个活动级别偏好的例子吗?

时间:2011-03-02 23:56:09

标签: android android-activity

好的,这就是我做“共享偏好”的例子,这是在我的助手偏好类中:

public static final String GAME_PREFERENCES = "GamePrefs";

这是我的一个活动课程中的一个:

     SharedPreferences settings = 
         getSharedPreferences(GAME_PREFERENCES, MODE_PRIVATE); 
         SharedPreferences.Editor prefEditor = settings.edit(); 
         prefEditor.putString("lastLaunch", returnTimeAndDateFormatted()); 
         prefEditor.commit();


         SharedPreferences settings2 = 
             getSharedPreferences(GAME_PREFERENCES, MODE_PRIVATE);
             if (settings2.contains("lastLaunch") == true) { 
//               System.err.println(settings2.getString("lastLaunch", "Default"));
                 Log.i("LASTLAUNCH", settings2.getString("lastLaunch", "Not LastLaunch value found!"));
             }

根据我的理解,我可以从我的任何活动类中访问变量“lastLaunch”,这些都是很好的和花花公子。

我的书中说还有一些被称为“活动级别偏好”的内容,但没有举例说明:(

有人可以给我一个例子(代码)吗?

提前致谢!

1 个答案:

答案 0 :(得分:3)

一个例子是使用getPreferences()活动方法。

SharedPreferences settings = getPreferences(MODE_PRIVATE); 
SharedPreferences.Editor prefEditor = settings.edit(); 
prefEditor.putString("lastLaunch", returnTimeAndDateFormatted()); 
prefEditor.commit();

SharedPreferences settings2 = getPreferences(MODE_PRIVATE);
if (settings2.contains("lastLaunch") == true) { 
    Log.i("LASTLAUNCH", settings2.getString("lastLaunch", "Not LastLaunch value found!"));
}

此处lastLaunch对此活动是私有的。