2013-02-20 58 views
1

我有一個strings.xml問題android strings.xml各種語言,場景

我的應用程序是英文的。

values/strings.xml是英文

還有許多其他語言的應用也

我最新的字符串鍵添加在values-en/strings.xml,在英語語言環境中的文件夾,而不是在values默認的語言文件夾

這將如何影響加載試圖訪問只在values-en中定義的字符串的視圖的非英語用戶?操作系統是否會在該文件中找到該字符串並以英文顯示?

這是棘手的我,因爲它不是在默認值的XML文件

感謝洞察力

+1

您可以通過在另一種語言的文件夾中添加新的字符串資源(而不是'res/values'或'res.values -en')。 – Sam 2013-02-20 16:18:25

+0

@Sam trueeeeee,我會 – CQM 2013-02-20 16:23:48

回答

1

想象弦系統的一系列if條件。首先我們檢查用戶的語言,一旦我們檢查了該特定語言的文件夾是否包含我們正在查找的字符串。如果是這樣,我們返回該字符串,否則我們默認檢查「values」文件夾。

if (language.equals("en") { 
    stringsFolders = "values-en"; 
} else if (language.equals("es") { 
    stringsFolders = "values-es"; 
} 

if (stringsFolder.contains(key) { 
    return stringsFolder.get(key); 
} else if ("values".contains(key) { 
    return "values".get(key); 
} else { 
    throw CantFindException(); 
} 

如果一個字符串屬於價值觀恩和西班牙用戶查找它,他們不會有機會檢查值恩文件夾,因爲他們沒有資格獲得它。或者,默認情況下,「values」文件夾總是被選中,所以放置在那裏將適用於所有語言

+0

正確,我測試了這個理論和應用程序崩潰。我會確保他們在默認文件夾中,就像我一直在做的一樣 – CQM 2013-02-20 16:37:22

相關問題