我的应用程序有一些UI元素基于用户的一些设置,我不知道我应该如何编写这个以获得最佳性能,并且似乎没有一个好的方法让Google尝试发现以前是否曾经问过这个问题。
基本上我想检查设置中的App Version UI,我目前通过一个函数来完成:
public String appVersion() {
appSettings = currentActivity.getSharedPreferences(APP_SETTINGS, 0);
String prefAppVersion = appSettings.getString("appVersion", "v2");
return prefAppVersion;
}
然后我将通过if / else语句显示某些UI元素:
if (appVersion().equals("v2")) {
// do something here
}
else {
// do something else
}
如果我在我的应用程序中调用该函数5-6次(将SharedPreference放在& over),这是否会导致内存问题,或者我更好地以某种方式声明一个获取SharedPreference的全局变量,然后使用该函数进行测试?我唯一担心的是,如果没有重置变量,则首选项会更改,并且需要重新绘制UI。
非常感谢您的想法/意见。
答案 0 :(得分:0)
我不认为appVersion函数会导致任何内存问题,但可能会将appSettings作为局部变量更好。
我不明白第二个问题,你的意思是如何知道改变的偏好? SharedPreferences.OnSharedPreferenceChangeListener可能会对您有所帮助。