Titanium中调用ios组件时语言不是本地化的解决方法

时间:2023-03-08 17:09:49

用Titanium开发的ios应用中,当调用系统组件时,尽管手机已经设置了系统语言为中文,但那些组件的界面却仍为英文。比如调用iphone中的相册组件,其界面为:

Titanium中调用ios组件时语言不是本地化的解决方法

那么怎么让它跟系统语言保持一致呢?

在原生的ios开发中,只需要在info.plist中把 CFBundleAllowMixedLocalizations 设置为 true 就行了,代表Localized resources can be mixed,就是允许库使用本地语言资源。

那么在Titanium中该怎么做呢?

其实也很简单,Titanium中提供了配置info.plist的方法,在tiapp.xml中配置就行。文档可以查看:http://docs.appcelerator.com/titanium/latest/#!/guide/tiapp.xml_and_timodule.xml_Reference-section-29004921_tiapp.xmlandtimodule.xmlReference-plist

简单来说就是在tiapp.xml中添加ios标签,然后再在它下面添加plist子标签

比如:

Titanium中调用ios组件时语言不是本地化的解决方法

至于有哪些键值可用,这些键值又是什么意思,可以去查阅苹果的开发文档

我们需要使用的是CFBundleAllowMixedLocalizations 这个键,把它设置为true就行了:

Titanium中调用ios组件时语言不是本地化的解决方法

好了,重新编译运行,然后再在应用中调用相册,界面变成了中文的:

Titanium中调用ios组件时语言不是本地化的解决方法