Привязка данных для нескольких языков

У меня есть приложение для 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);

надеюсь, это то, что вы ищете:)

Другие вопросы по тегам