【发布时间】:2014-05-28 15:36:14
【问题描述】:
我有一个来自数据库的流派列表。
对于每种类型,我需要添加我公司产品团队指定的同义词。
例如,chamber music 是 classical 的同义词。
所以我的产品经理提供给我的数据本质上是NSDictionary,其中键是NSStrings 等主要类型,值是NSString 同义词中的NSSet。
问题是:我想将此信息与应用中所有其他面向用户的文本一起存储在Localizable.strings 中。我需要在运行时对其进行解析,以根据从数据库返回的流派插入同义词。
是否有一种标准方法可以在本地化字符串文件中指定此结构化数据?然后我需要把它解析成上面描述的数据结构。
对我的产品经理来说,最简单的可能是在字符串文件中使用 CSV 之类的东西,然后在运行时手动解析它。
所以也许我的Localizable.strings 会有这样的条目:
"GenreSynonyms" = "classical, chamber music, opera\
alternative, grunge, indie\
spanish, latin, salsa"
这是解决问题的合理方法吗? Apple 是否有任何建议将数据存储在不是简单的平面映射列表的 .strings 文件中?
我查看了Apple's programming guide for Strings Resources,但没有找到类似的内容。
更新:从 Jerome 的评论中,我找到了this answer。
听起来像本地化整个 plist(答案中描述的第一个选项)可能是我最好的选择。
还有其他建议吗?
【问题讨论】:
-
我看不出你为什么不能这样做。但是我可以建议您创建一个 .plist 并对其进行本地化吗?然后,您可以通过阅读直接检索 NSDictionary。
-
@JeromeDiaz 请发表您的评论作为答案。
标签: ios objective-c xcode string cocoa