设置全局变量或重复调用函数?

时间:2012-10-25 00:04:59

标签: android function global-variables sharedpreferences

我的应用程序有一些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。

非常感谢您的想法/意见。

1 个答案:

答案 0 :(得分:0)

我不认为appVersion函数会导致任何内存问题,但可能会将appSettings作为局部变量更好。

我不明白第二个问题,你的意思是如何知道改变的偏好? SharedPreferences.OnSharedPreferenceChangeListener可能会对您有所帮助。