如何在android中的整个应用程序中替换另一个字符串?

时间:2013-04-24 09:08:17

标签: android

当用户从设置中选择选项时,我必须用另一个文本更改一个文本,例如 当用户从选项中选择公里时,我必须将千米更改为英里。而当我选择它 我必须改变里程进入迈尔斯认为应用程序,请帮助我,如果有人知道 怎么做?

2 个答案:

答案 0 :(得分:2)

为方便起见,全局声明这些:

SharedPreferences sharedPrefs;
Editor editor;
private static final String PRIVATE_PREF = "current_selection";

然后在onCreate()或它的等价物:

sharedPrefs = getApplicationContext().getSharedPreferences(PRIVATE_PREF, Context.MODE_PRIVATE);

// SET THE DEFAULT VALUE
editor = sharedPrefs.edit();
editor.putString("value", "kilometers");

// DONT SKIP THIS STEP
editor.commit();

最后,无论您何时需要检查当前选定值中的哪一个(公里/英里):

String strSetting = sharedPrefs.getString("value", null);

现在,您可以使用String strSetting检查设置的值,然后运行相应的代码。我假设它可能与转换有关。

注意:如果您在另一个Activity中使用上述(检索),则需要再次实例化这一点:

SharedPreferences sharedPrefs = getApplicationContext().getSharedPreferences(PRIVATE_PREF, Context.MODE_PRIVATE);
String strSetting = sharedPrefs.getString("value", null);

只要您想要更改设置,只需使用第一段代码即可。例如,如果您从公里数变为英里数:

// SET THE A NEW VALUE
editor = sharedPrefs.edit();
editor.putString("value", "miles");

// DONT SKIP THIS STEP
editor.commit();

您可以阅读有关SharedPreferences here

的更多信息

答案 1 :(得分:0)

在MainActivity(或其他地方)中声明一个静态String。

class MainActivity {
   public static String distance = "kilometer";
}

您可以使用

从任意位置更改字符串
MainActivity.distance = "miles"; 

然后你可以使用你的应用程序的距离String。