- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在阅读有关本地化和国际化的文档,但对我来说并不是很清楚:你能解释一下 .lproj 文件和/或 Localizable.strings 文件(如果它们已连接)之间的链接吗?
或者,如果您知道我在哪里可以看到/下载使用本地化文本的应用示例?
我已经看到带有示例代码“NavBar”的 Localizable.strings 文件(来自文档),但还没有关于使用 .lproj 文件的示例代码。
谢谢你的帮助
最佳答案
非常简单:为每个本地化创建一个文件夹,本地化名称后跟“.lproj”,您可以在其中放置任何可本地化的文件(您也可以本地化图像)和您的 Localizable.strings(其中包含返回的文本用于本地化的 obj-c API)。不要忘记在 Xcode 的资源中添加文件。
例如,如果你有 3 个本地化版本,你可以有这样的结构:
PROJECT_DIR/
- en.lproj/
Localizable.strings
- it.lproj/
Localizable.strings
- pt.lproj/
Localizable.strings
en.lproj/Localizable.strings 有英文字符串,等等。在您的 Xcode 上添加三个 Localizable.strings(然后它会很聪明地进行分组),然后就完成了。
要使用本地化字符串,只需调用 NSLocalizedString(NSString *key, NSString *comment),它会自动在 Localizable.strings 文件中查找当前语言环境的键,并返回与该键关联的值。有关 NSLocalizedString 的更多信息,请参阅 NSLocalizedString .
关于objective-c - .lproj 和 Localizable.strings : project with localized text?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7381461/
我很困惑,因为这不是通过 xcode 完成的。我必须在查找器中找到项目文件夹,然后将文件真正移动到这些 *.lproj 文件夹中。那是对的吗?或者有没有办法在 Xcode 中像 Groups 一样查看
根据官方文档Internationalization Programming Topics : if your Mac app had localizations for United States,
我的项目中有一个 Localizable.strings 文件,我想为其添加更多本地化内容。 所以我转到项目设置并单击“+”添加语言。由于没有“+”按钮,我无法再在右侧面板上执行此操作。 Xcode
这有点令人困惑: 首先我使用了 genstrings,它在 en.lproj 文件夹中创建了一个 Localizable.strings 文件(也存在于这样的文件系统中)。 然后我有一个我想要本地化的
我使用 apache cordova 3.8.0 创建了一个新项目。它在所有设备上都能正常工作。但是有一个问题,Resources 文件夹中不包含 en.lproj、de.lproj 和 Locali
我创建了 3 个带有翻译的文件: localizable.strings(英文) localizable.strings(瑞典语) localizable.strings(芬兰语) 我有这个方法来按键
在哪里可以找到我的项目本地化文件夹的区域设置名称缩写列表? (例如 en 表示英语,fr 表示法语)。 我正在寻找德语、西类牙语和其他语言。 最佳答案 您可以将它们命名为English.lproj、S
我试图理解 Base.lproj 但我仍然不理解它。如果我在 XCode 6 beta 4 中使用 View Controller 和 Swift+Storyboard 创建一个新的简单项目,我会得到
我正在尝试开始对一个项目进行本地化,并且我已经有了 Localizable.strings 的英文版。我现在正在尝试将法语添加到该文件中,该文件正在创建一个 fr.lproj 文件夹,正如我所期望的那
我将应用程序包放入 PackageMaker 中并尝试构建它,但现在收到此错误: error could not copy resources to en.lproj 有什么想法吗?谢谢 屏幕截图:
我的游戏本地化为 3 种不同的语言。为了让 iTunes Connect 知道游戏已本地化,我创建了这些文件: ios\resources\en.lproj\Localizable.strings i
我正在创建一个应用程序,目前我想提供英语和德语版本。我检查了项目配置中的 Base 本地化标记并添加了 German。我把英语作为开发语言。 然后我创建了一个文件 Translation.plist
我已经寻找过类似的问题,但这一定是以前问过的。无论哪种方式,请为我指明正确的方向。 我第一次本地化了一个应用程序。它似乎工作正常,但我有两组 .lproj 文件。一组在设置包中,另一组在主项目目录中。
在使用 iOS 6 和新的本地化版本时,更新本地化 Storyboard的 .strings 文件的最佳方式是什么?当我切换到新的 Base.lproj 机制时,我的项目很好地创建了字符串文件,但它不
我一直在寻找一个脚本,它可以在构建时从项目中删除不需要的语言......没有深入细节。我有一个包含子项目的项目,其中一些子项目具有我不想附带的本地化版本(因为苹果查看 lproj 文件夹以说明您支持的
自从我更新到 XCode 10 后,我在将我的应用上传到 App Store 时收到以下警告: Unrecognized Locale - The locale names used in local
我使用基本国际化和每种语言的可本地化字符串本地化了我所有的 xib 文件。我的本地化 xibs 的文件夹结构是例如像这样 base.lproj/LoginView.xib de.lproj/Login
我有一个构建得很好的项目。看似随机地,执行一次运行导致代码设计错误,我已经 2 天无法解决了。 错误如下: bundle 格式无法识别、无效或不合适在子组件中:/Users/user/Library/
我在网上和这里搜索了这个错误。在网上,它以不同的语言向我显示结果,然后是英语不错的谷歌。这里有一个帖子和一个从未真正回答过这些人问题的人。 我的桌面上有我的 xcode 项目文件夹。在项目文件夹中,我
在 Apple 的文档和示例代码中,我看到 lproj 文件夹既以语言名称(例如“English”)命名,又以 ISO 639 代码(例如“en”)命名。 明确的命名要求是什么?我没找到。 如果没有,
我是一名优秀的程序员,十分优秀!