2012-08-22 34 views
0

我正在使用PreferenceActivity來存儲語言。這是我的XML。如何從字符串中選擇語言環境

<item>US</item> 
     <item>UK</item> 
     <item>CANADA</item> 
     <item>CANADA_FRENCH</item> 
     <item>CHINESE</item> 
     <item>FRENCH</item> 
     <item>GERMAN</item> 
     <item>ITALIAN</item> 
     <item>JAPANESE</item> 

<string-array name="listOfLanguagesValues"> 
     <item>US</item> 
     <item>UK</item> 
     <item>CANADA</item> 
     <item>CANADA_FRENCH</item> 
     <item>CHINESE</item> 
     <item>FRENCH</item> 
     <item>GERMAN</item> 
     <item>ITALIAN</item> 
     <item>JAPANESE</item> 

然後我讀保存dlanguage與

String selectedLanguage = sharedPreferences.getString("listOfLanguages", "NULL");   

,但我不知道現在怎麼樣LOCAL.SELECTED LANGUAGE使用。這些語言都來自LOCAL.選項

我可以以某種方式將它投到本地?

回答

1

我跳舞我得到的問題!您需要第二個數組。例如:

<string-array name="languageSettings"> 
     <item name="0">UK</item> 
     <item name="1">German</item> 
     <item name="2">Italy</item> 
    </string-array> 
    <string-array name="languageSettingsValues"> 
     <item name="0">UK</item> 
     <item name="1">DE</item> 
     <item name="2">IT</item> 
    </string-array> 

你可以將它連接到您的ListPreference這樣的:

<ListPreference 
    android:defaultValue="0" 
    android:entries="@array/languageSettings" 
    android:entryValues="@array/languageSettingsValues" 
    android:key="languageSetting" 
    android:summary="@string/preferences_alternativesettings_text" 
    android:title="@string/preferences_alternativesettings_titel" /> 

此行應該工作

String selectedLanguage = sharedPreferences.getString("listOfLanguages", "NULL"); 
+0

我知道這一點。但現在如何投向本地。現在你得到英國。如何將其轉換爲本地? – senzacionale

+0

也許這會幫助[鏈接](http://stackoverflow.com/questions/6464771/how-can-i-change-language-of-my-application) –

相關問題