OStack程序员社区-中国程序员成长平台

标题: ios - 用日语开发应用程序,将本地化添加到英语 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 08:25
标题: ios - 用日语开发应用程序,将本地化添加到英语

我正在开发一款几乎专门针对日本用户的 iOS 应用,其中可能有一小部分说英语的用户。

所有 Storyboard和 xib 都使用日文字符串设计,并且应在稍后阶段将其本地化为英文。

从一开始,Xcode 中 Project 的 Info/Localizations 部分如下:

enter image description here

(这两个文件当然是“Main.storyboard”“LaunchScreen.xib”)

因为已经添加了“English”(作为开发语言),所以我无法点击“+”按钮并将其添加为本地化。我可以添加“日语”,但我希望它成为开发语言,而不仅仅是一些(辅助)本地化。

此外,与上述明显矛盾的是,TargetInfo.plist 文件内容如下:

enter image description here

当我在项目导航器中选择任一本地化文件(Main.storyboardLaunchScreen.xib),并检查文件检查器时,“本地化”部分阅读:

enter image description here

...这似乎表明现有的日语文件(.xib 和 .storyboard)是“基础”,检查“英语”也将增加对该语言的支持(下拉菜单似乎表明我可以选择使用字符串文件或 Storyboard的专用副本。我倾向于相信字符串方法更好)。

...那么,我应该怎么做呢?

A.检查文件检查器/本地化部分中的“英语”框? 这会创建一个 en.lproj 文件夹,并在其中添加一个字符串文件,我猜我应该稍后再翻译。这似乎有效地将我现有的 Interface Builder 文件(填充有日语标签)视为“基础”,并通过创建的字符串文件(如果我理解正确的话)提供英语本地化。然而,在项目设置中作为开发语言的英语仍然令人不安......

B.在 Project/Info/Localizations Pane 中删除英语并改为添加日语? 这将使日语成为开发语言,之后我可以将英语重新添加为本地化。但由于某种原因,如果我这样做,日语将 被视为“基本”语言,并且还会为日语添加(不必要的)字符串文件,而不仅仅是英语。

编辑:我找到了 this question ,它以某种方式为上述选项 B 提供了“修复”。



Best Answer-推荐答案


好的,这就是我所接受的(但我仍然会接受更好/更聪明的答案):

我按照 the question I mentioned before 的建议做了,并编辑 Xcode 项目文件以强制将日语作为“开发语言”:

developmentRegion = English;
            hasScannedForEncodings = 0;
            knownRegions = (
                en,
                Base,
            );

变成:

developmentRegion = Japanese;
            hasScannedForEncodings = 0;
            knownRegions = (
                en,
                ja,
                Base,

接下来,对于我想要本地化的 Storyboard/xib,我将选中文件检查器/本地化中的“英语”复选框:

enter image description here

...这将为英语本地化创建我的字符串文件(注意“英语”下方的“日语”复选框。我宁愿它根本不存在,因为基本 xibs/storyboards 已经有日语文本标签默认情况下,但我可以不选中它)。

现在,项目的信息 Pane 中的“本地化”部分如下所示:

enter image description here

附录: 现在我想起来了,像这样设置,如果有人在(比如说)设置为法语的 iPhone 上启动这个应用程序,应用程序将回退到日语(不是英语)。这可能并不理想,因为非日语使用者的默认语言应该是英语,而不是相反。

但是,我无法用英文设计我的 xib,然后再将它们翻译成日文。

关于ios - 用日语开发应用程序,将本地化添加到英语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31043913/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4