代码之家  ›  专栏  ›  技术社区  ›  NightFury

无法本地化自定义键盘iOS

  •  8
  • NightFury  · 技术社区  · 9 年前

    我正在尝试实现一个键盘扩展,它可以根据用户在设备设置中选择的语言显示按键。

    在里面 编辑方案 ,我已正确设置 应用程序语言 应用程序区域 对于Container应用程序和扩展,如下所示:

    enter image description here

    但我的键盘总是以英语(en-US)版本打开。

    在里面 信息.plist ,我已经添加 摩尔 对于 主要语言 :

    <key>NSExtension</key>
        <dict>
            <key>NSExtensionAttributes</key>
            <dict>
                <key>IsASCIICapable</key>
                <false/>
                <key>PrefersRightToLeft</key>
                <false/>
                <key>PrimaryLanguage</key>
                <string>mul</string>
                <key>RequestsOpenAccess</key>
                <false/>
            </dict>
    

    此外,我还有本地化的密钥名称。

    enter image description here

    我记录了应用程序正在使用的语言:

        var lang : String = NSLocale.preferredLanguages()[0] as! String
        NSLog(lang)
    

    容器应用程序检测不到正确的语言 我们的 。但键盘扩展总是会启动 en美国 。我正在使用xcode 6.4并在模拟器iOS 8.4上进行测试。

    我可能漏掉了一个很小的问题。欢迎提出任何建议。谢谢

    1 回复  |  直到 9 年前
        1
  •  2
  •   NightFury    9 年前

    最后,找到了解决方案。我做本地化的方式不对。正确的方法是保持 英语 基础的第一语言 ,那么其他语言也应该跟上。

    enter image description here

    此外,为了在模拟器(键盘)中正确检测语言,您还应该更改 语言和地区 在模拟器中 架构 .

    enter image description here

    希望它对将来的人有所帮助!