【问题标题】:IOS 8 NSLocationAlwaysUsageDescription custom translationIOS 8 NSLocationAlwaysUsageDescription 自定义翻译
【发布时间】:2014-10-30 14:37:24
【问题描述】:

我知道我可以使用标准 iOS 本地化机制本地化 NSLocationAlwaysUsageDescription 文本。 由于我们使用的是自定义动态本地化机制,我想知道是否有另一种方法来翻译该字符串。 我想在应用启动时编辑应用程序 info.plist 文件,但它似乎是只读的。

我可以通过应用程序更改此值吗?

【问题讨论】:

  • 尝试将 info.plist 文件复制到不同的“.lprj”文件夹中...并相应地更改消息

标签: ios objective-c iphone localization ios8


【解决方案1】:

有办法。添加一个名为“InfoPlist”的新字符串文件。然后使用属性检查器中的本地化按钮对其进行本地化,并将本地化添加到 InfoPlist 的键中。为了本地化 CLLocation premission 的描述,在每个版本中添加正确的键和本地化的值。

//English file
"NSLocationAlwaysUsageDescription" = "English description";

_

//Polish file
"NSLocationAlwaysUsageDescription" = "Polski opis";

【讨论】:

  • 这正是我不想做的——我不想使用标准的本地化机制。
  • 这是正确的,但只是重复,Kyle Howells 已经提供了正确的答案。
  • @Misha 如果您不想使用该标准,请找到一种在构建时覆盖 info.plist 内容的方法,但是您需要多个国家/语言目标,我真的希望你没有。
【解决方案2】:

没有办法使用带有 info.plist 字符串的自定义本地化系统

您的应用程序的那部分将不得不使用 iOS 的默认本地化机制

这是使用iOS内置的字符串文件本地化系统本地化位置请求描述的方法。

// English.strings file
"NSLocationAlwaysUsageDescription" = "English description";

// AnotherLanguage.strings
"NSLocationAlwaysUsageDescription" = "ajbdknfuied wibnrf";

编辑:每个人都投票给我。该问题询问有关使用自定义“自定义本地化系统”的问题。他们明确表示他们不想使用内置的本地化系统,而是使用他们自己定制的系统。这就是为什么我说这是不可能的。

本地化NSLocationAlwaysUsageDescription 是完全可能的。使用您自己的自定义本地化系统并非如此。

【讨论】:

【解决方案3】:

我尝试使用上面的答案,但直到我使用this much more helpful thread 中的信息之前都没有运气。

【讨论】:

    猜你喜欢
    • 2016-10-21
    • 1970-01-01
    • 2013-05-17
    • 1970-01-01
    • 2017-12-22
    • 2019-11-12
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    相关资源
    最近更新 更多