【问题标题】:localization with core data核心数据本地化
【发布时间】:2011-01-13 00:48:21
【问题描述】:

有人对核心数据的本地化有什么建议吗?我的应用程序包含的信息有时会在两种语言中相同,例如人的照片,或不同的信息,例如人的传记。

据我了解,localize the field names 是可能的,但是对于字段值来说,最好的做法是什么?

【问题讨论】:

    标签: iphone xcode core-data localization internationalization


    【解决方案1】:

    如果您想本地化字符串值,您应该创建一个名为 LocalizableText 的实体,其属性为 locale 和localizedText。您将与 LocalizableText 建立关系,而不是使用 NSStrings 作为您的属性。

    因此,您的 Person 实体将与实体 LocalizableText 有一个名为 biography 的关系。它还有一个用于本地化传记的只读属性,该属性将根据您的用户的当前语言环境检查要返回的适当的本地化文本。

    【讨论】:

    • 嘿,谢谢。也许这是我的经验不足,但我不确定你为什么会那样做。您是否有谈论该策略的指南/文档?现在我正在考虑在同一张桌子上放一个 biography_english 和 biography_french 。我有理由不这样做吗?
    • 嗯,这取决于你的使用情况。如果您知道自己永远不会本地化为另一种语言,并且将来某个时候需要翻译其他领域的机会,那么添加特定于语言的领域是可以的。但是,当您决定要本地化其他字段或其他语言时,创建一个可用于任何翻译字段并使用任何语言的通用实体将使您的生活更轻松。
    • 另外,在实体上为 UI 字段调用localizedText 属性比为每种语言在 UI 上重新执行每个字段映射更容易。基本上可以将其视为 NSString 属性的更高级版本。
    • 有没有办法通过这种方法利用核心数据排序?我的理解是,Core Data 无法对localizedBiography 属性进行排序。
    猜你喜欢
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多