假設我有兩個strings.xml
文件 - 一個用於英文,一個用於丹麥語。有沒有辦法在res/values中覆蓋strings.xml?
雖然大多數用戶可能會對丹麥語翻譯感到滿意,但有些人更喜歡英文翻譯的可能性不大。
有沒有辦法覆蓋Android的字符串資源的默認選擇?我很想有一個設置讓用戶忽略任何特定於語言的字符串資源,並且默認回到英文。
假設我有兩個strings.xml
文件 - 一個用於英文,一個用於丹麥語。有沒有辦法在res/values中覆蓋strings.xml?
雖然大多數用戶可能會對丹麥語翻譯感到滿意,但有些人更喜歡英文翻譯的可能性不大。
有沒有辦法覆蓋Android的字符串資源的默認選擇?我很想有一個設置讓用戶忽略任何特定於語言的字符串資源,並且默認回到英文。
設置默認Locale
到English
:
public class MyApplication extends Application
{
private Locale locale = null;
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
if (locale != null)
{
newConfig.locale = locale;
Locale.setDefault(locale);
getBaseContext().getResources().updateConfiguration(newConfig, getBaseContext().getResources().getDisplayMetrics());
}
}
@Override
public void onCreate()
{
super.onCreate();
Configuration config = getBaseContext().getResources().getConfiguration();
locale = new Locale("en-US");
Locale.setDefault(locale);
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
}
}
一個辦法是改變你的應用程序中的語言環境
Changing Locale within the app itself
Locale appLoc = new Locale("en");
Locale.setDefault(appLoc);
Configuration appConfig = new Configuration();
appConfig.locale = appLoc;
getBaseContext().getResources().updateConfiguration(appConfig,
getBaseContext().getResources().getDisplayMetrics());
非常感謝!我會看看這個和其他類似的解決方案,並看看我的情況最好的辦法:) –
非常感謝!我會看看這個和其他類似的解決方案,看看我的情況最好:) –