OGeek|极客世界-中国程序员成长平台

标题: ios - 在 iOS 中处理变格 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 11:05
标题: ios - 在 iOS 中处理变格

我需要处理变格。该应用程序使用不同的语言(捷克语),其中单词会变为单数或复数。并且基于性别。

英文示例

1 item, 2 items, 5 items, ...

目标语言 => 捷克语

1 položka, 2 položky, 5 položek, ...

我发现我目前正在浏览的存储库很少。 https://github.com/adamelliot/Inflections

https://github.com/mattt/InflectorKit

在 android 上,有一种方法可以通过 xml 来实现。在 iOS 上是否有任何推荐的方法来处理这个问题?我不想使用 if 或开关。

感谢您的建议和建议。

马蒂



Best Answer-推荐答案


在 iOS(和其他 Apple 平台)中,复数变格和其他随数值变化的本地化字符串通过与其他本地化字符串相同的 API 运行。因此,您只需在代码中调用 NSLocalizedString(无需额外的 if 或开关),但您提供了更多支持本地化数据 - 除了包含 main 的 Localizable.strings 文件(与数字无关的)本地化字符串,您可以为变格添加一个 stringsdict 文件。

Apple 的文档逐步介绍了这一点:请参阅 Handling Noun Plurals and Units of Measurement在他们的国际化和本地化指南中。这里的例子是俄语,IIUC 的复数规则与捷克语相似...但是 stringsdict 格式支持完整的 Unicode CLDR Plural Rules如果您需要处理更多。

关于ios - 在 iOS 中处理变格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36898732/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4