2014-12-03 4 views
1

У меня есть два языка в моем приложении. Английский и урду. Я создал две папки для strings.xml.
1.values ​​(по умолчанию для английского языка)
2.values-ар (для урду)папка для Android для двух разных языков

Теперь, когда я установил Locale для английского языка он работает нормально в телефоне и планшете. Но когда я устанавливаю язык на урду, а затем в телефоне он показывает текст урду, но в планшете он показывает английский.

Пожалуйста, объясните, почему это происходит. Как я понимаю, приложение должно выбрать строку на основе набора локалей.

Here they haven't specified anything about phone and tablet

Спасибо.

+0

У вас есть различные папки макета для планшета или он использует то же самое? – juned

+0

Не могли бы вы рассказать нам, какая у вас модель планшета и телефона? –

+0

@juned У меня есть та же папка макета для планшета и телефона. – dev

ответ

1

ar предназначен для арабского языка.

Попробуйте использовать значения Ур для урду

0

Пытаться определить локализацию с этим кодом:

Locale locale = new Locale("ar_UR"); 
Locale.setDefault(locale); 
Configuration config = new Configuration(); 
config.locale = locale; 
getBaseContext().getResources().updateConfiguration(config, 
     getBaseContext().getResources().getDisplayMetrics()); 

Папка ресурса (values-ar) не так, вам просто нужно определить код, указанный выше. Если "ar_UR" не работает, попробуйте найти код локализации в Google. Формат:

ar = код страны (в нижнем регистре текст)

_ = разделитель из этого два кода

UR = код языка (ВЕРХНИЙ текст)

Смежные вопросы