Titanium Mobile: установить язык (язык) в приложении - PullRequest
1 голос
/ 21 апреля 2011

Я не совсем понимаю, как обрабатывается языковой стандарт пользователя в Titanium Mobile. Я сейчас настроил два языковых файла, и по крайней мере английская версия работает нормально. Теперь я хотел бы иметь возможность установить языковой стандарт в приложении, чтобы пользователь мог изменить язык приложения.

Как это сделать? И каков наилучший способ решения других региональных проблем, таких как валюта, форматирование даты и т. Д .?

Спасибо за ваши ответы! ура Chris

Ответы [ 4 ]

0 голосов
/ 21 ноября 2016

Для изменения языка приложения вы можете попробовать это, поскольку я использую то же самое для той же цели: -

Я добавил это в loy.js

var language = Ti.App.Properties.getString('selectedLanguage','es');
Alloy.Globals.language = language;
Ti.Locale.setLanguage(language);

для изменения языка приложения, я создал tableView для выбора на приемнике щелчков таблицы

if(e.index == 0){
    Alloy.Globals.language = 'es';
    Ti.App.Properties.setString('selectedLanguage','es');
}else{
    Alloy.Globals.language = 'en';
    Ti.App.Properties.setString('selectedLanguage','en');
}

и после всего этого я обновляю свой экран, в моей функции updateScreenForLanguage();

function updateScreenForLanguage(){
    $.Back.text = (L('Back'));
    $.Title.text = (L('Profile'));
    $.labelLanguagePreference.text = (L("Language_Preference"));    
}

надеюсь, это поможет вам. для более титана интернационализация

0 голосов
/ 02 декабря 2013

Вы можете использовать ниже модули

https://marketplace.appcelerator.com/listing?q=locale%20-#!/list/page/1/search=locale%20-

Этот модуль поможет вам следовать той же папке i18n string.xml и будет использовать язык только внутри вашего приложения.

0 голосов
/ 21 ноября 2016

Используйте и внешнюю библиотеку JS, например https://github.com/fnando/i18n-js, чтобы можно было принудительно переключать язык в приложении.Библиотека уже достаточно надежна.

http://i18njs.com/

0 голосов
/ 21 апреля 2011

Язык локали Titanium можно использовать следующим образом

var language = Titanium.Platform.locale;
Titanium.App.Properties.setString('locale',language);
Titanium.App.language = language;
...