Привязка данных для нескольких языков
У меня есть приложение для Android, с 2 поддерживаемыми языками (греческий и английский). У меня есть мой string.xml для каждого языка, и они работают правильно. Моя проблема в том, что у меня есть Viewpager, который получает свои элементы из таких массивов, как:
rank = new String[] { "one", "two", "three", "four"};
после связывания, следуя этому руководству http://www.androidbegin.com/tutorial/android-viewpager-gallery-images-and-texts-tutorial/. Я пытался сделать что-то вроде этого в моей Viewpage_activity:
if(Locale.getDefault().toString()=="el_GR")
{
rank = new String[] { "ένα", "δύο", "τρία"};
}
else
{
rank = new String[] { "one", "two", "three"};
}
Но это не работает. Каков наилучший способ связывания данных, когда у вас несколько языков?
1 ответ
Решение
Вы можете просто создать этот массив в обоих string.xml где rank
имя массива в обоих XML-файлах
<string-array name="rank">
<item>One</item>
<item>Two</item>
<item>Three</item>
</string-array>
и в греческих строках
<string-array name="rank">
<item>ένα</item>
<item>δύο</item>
<item>τρία</item>
</string-array>
затем используйте массив в своем коде Java как:
String[] rank = getResources().getStringArray(R.array.rank);
надеюсь, это то, что вы ищете:)