[英]Android - How to localize content properly?
考慮一個帶有用戶詳細信息的應用程序-名稱,性別,婚姻狀況等。並且說,我需要該應用程序支持英語,西班牙語和普通話。
在用戶填寫表單時,通過用於不同語言的不同strings.xml文件可以以所有不同語言顯示“男” /“女”。
我將用英語將詳細信息保存到SQLite數據庫中。 因此,如果用戶使用西班牙語運行該應用程序並選擇“ Masculino”,則該應用程序仍將作為“ Male”保存到數據庫中。
現在,當用戶想要查看以西班牙語輸入的詳細信息時,如何讀取SQLite中的英語數據並將其轉換為西班牙語或普通話或任何其他語言?
我不會在數據庫中存儲類似的英語字符串。 我將其存儲為整數值,男性為0,女性為1。 然后在顯示時,我將檢查該值,然后使用資源中相應字符串的id並從xml字符串文件中獲取該字符串。
您也可以將字符串的名稱存儲為“ Male”而不是“ Male”。 例如,如果您在strings.xml文件中聲明
<string name="gender_male">Male</string>
然后將"gender_male"
作為值而不是"Male"
存儲在數據庫中。 從數據庫檢索時,您可以調用
String value = get from database;
int valueResId = getResources().getIdentifier(value, "string", your package name);
String gender = getString(valueResId);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.