【问题标题】:Error when working with i18n country code in Appcelerator Titanium在 Appcelerator Titanium 中使用 i18n 国家代码时出错
【发布时间】:2015-03-18 19:06:09
【问题描述】:

我有一个用钛(合金)构建的应用程序,带有 pt-PT、pt-BR 和 en-US 的字符串。 目前,如果我有一个文件夹 en 和 pt 它工作得很好,尽管如果我添加国家代码,构建过程就会中断。 (钛构建 -p android -T 设备)

我收到以下错误:

[ERROR] Failed to package application:
[ERROR]
[ERROR] invalid resource directory name:
[PATH TO MY APP]\build\android\res values-pt-PT
[PATH TO MY APP]\build\android\res values-pt-BR
[PATH TO MY APP]\build\android\res values-en-US

它看起来很像合金/钛中的错误,但我实际上无法确认。有什么想法吗?

SDK 版本:3.5.1

目标:iOS、Android(目前在 android 上测试,但必须在 iOS 上工作)

【问题讨论】:

    标签: mobile internationalization titanium titanium-mobile titanium-alloy


    【解决方案1】:

    Try Project > Clean ... 并从列表中选择项目。如果这不起作用,请在区域前面添加“r”。这意味着,文件夹名称应该是“pt-rPT”而不是“pt-PT”。我怀疑 Android 会获取以“r”开头的 res 文件夹。是的,奇怪的工作,但工作了一次。

    顺便说一句,您使用的是什么 Titanium SDK?

    【讨论】:

    • 版本 3.5.1。有用!非常感谢,这真的很奇怪,但没关系。现在我必须找出是否可以在运行时更改语言环境(我正在使用语言环境模块marketplace.appcelerator.com/apps/7210#!overview)以及如何使其在 iOS 中也能正常工作。有什么想法吗?
    • 查看 Titanium 代码,您可能能够在 iOS 上运行时更改区域设置,请参阅 setLanguage 方法。在 Android 上,这是一个尚未在 LocaleModule 上实现的功能。
    • 使用我正在使用的模块可以更改语言环境。问题是使国家代码在 iOS 上工作。使用 pt-rPT 似乎不适用于 iOS =/
    • 好的,经过一些测试,iOS 可以使用普通的 pt-PT,但它需要有一个 pt 文件夹才能使用 pt-BR。 IMO 这很糟糕,但我想我可以用一些符号链接来解决它。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2015-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多