Android 如何使用Appaccelerator为区域设置切换?
我有一个使用Appaccelerator构建的iPhone/Android应用程序。我已经将所有文本转换为语言环境(i18n//strings.xml),并且还实现了一个开关:Android 如何使用Appaccelerator为区域设置切换?,android,ios,titanium,Android,Ios,Titanium,我有一个使用Appaccelerator构建的iPhone/Android应用程序。我已经将所有文本转换为语言环境(i18n//strings.xml),并且还实现了一个开关: <label for="flip-1" class="username">Language:</label> <select name="flip-1" id="flip-1" data-role="slider"> <option value="off">EN&l
<label for="flip-1" class="username">Language:</label>
<select name="flip-1" id="flip-1" data-role="slider">
<option value="off">EN</option>
<option value="on">NL</option>
</select>
语言:
EN
NL
这在Android和iPhone上运行得相当好
如何启用此select元素来更新应用程序中的活动语言区域设置,以便应用程序的语言会发生更改,并且在不重新启动应用程序的情况下是否可以这样做?在运行时无法更改当前区域设置。语言环境取决于手机的当前语言,但您仍然可以进行一些变通。 在i18n目录中创建strings.xml文件,并将所有文本放在其中,如下所示:
<resources>
<string name="en_car">Car</string>
<string name="de_car">Auto</string>
</resources>
我没有测试它,只是想给你一些例子来处理它。您也可以像在Ti文档中一样传递提示选项:这与我目前实现它的方式非常相似,唯一的区别是,我使用默认的L()函数。我似乎无法破解的是如何影响用于布局的.html文件中的语言。
Ti.App.defaultLang = "en"; // global variable with default language (set it in app.js)
function myL(str, lang) {
if(lang && str) {
return L(lang + '_' + str);
} else {
return L(Ti.App.defaultLang + '_' + str);
}
}