将DYNAMIC String转换为选定的语言

时间:2014-06-17 01:58:11

标签: android sharedpreferences

我正在尝试将我的应用国际化。当我选择不同的语言时,string.xml中的所有字符串都会发生变化。但我已将字符串保存在SharedPreference中,因此当我更改语言时,更改不适用于保存在SharedPreference中的字符串。有办法吗?提前谢谢。

例如:

我保存用户从日期选择器中选择的日期:

(English) Thursday, June 17 at 10:00 AM

当我更改语言设置时,它应该是:

(Spanish) Jueves, Junio 19 en 10:00 AM

但仍然是英文,

1 个答案:

答案 0 :(得分:1)

当您将日期保存到SavedPreferences时,您需要将其转换为millisecond,然后当您将SavedPreferences中的日期作为millisecond时获取,那么将它提供给Date类的构造函数。

<强>样品:

将其保存为value的毫秒(SavedPreferences)。

long value = new Date().getTime(); //where it is english at this time

SavedPreferences获取值并将其提供给Date类

的构造函数
//after you change language
long value = //get the value from SavedPreferences
Date d = new Date(value); 
d.toString(); //now the result will be the language you specified
相关问题