我创建了一个动态壁纸,其中有一个“设置”按钮,可以加载PreferenceActivity但不点击“设置”,但我想访问Engine或WallpaperService子类中的SharedPreferences。因为我只想访问小的单个字符串所以我不想;我希望用户进入设置并访问该字符串。 所以我想在Engine的子类或WallpaperSerivce
中执行此代码SharedPreferences mPrefs = getPreferenceManager().getSharedPreferences();
String option = mPrefs.getString(
this.getResources().getString(R.string.name),
this.getResources().getString(R.string.option));
答案 0 :(得分:0)
这不是最好的方法我确定,但我使用getter和setter来达到这个效果。
private int mySetting = defaultvalue
public int getMySetting() {
return mySetting;
}
public void setMySetting(int mySetting) {
this.mySetting = mySetting;
}
我显然在该代码中使用了一些纯文本,但希望它是非常自我解释的
您可以在设置类中使用...
设置此变量Settings.this.setMySetting(value);
删除“this”以从其他类调用
您可以使用以下
在任何课程中提取此信息Settings.getMySetting();
您可以使用几乎任何变量类型,只需确保在尝试传递int之外的值之前将mySetting变量定义为该类型,如本示例所示。希望这会有所帮助。