【问题标题】:Prompt for gender only in certain locales仅在某些地区提示性别
【发布时间】:2011-09-15 17:52:08
【问题描述】:

我正在设计一个使用本地化字符串的 iOS 应用。我的一些字符串包含在某些语言中包含性别后缀的单词。

我想提示我的用户指定他们是男性还是女性,但前提是设备使用需要性别代词的语言。

我该如何处理?我应该尝试检测设备的语言环境吗?我应该尝试检测 iOS 选择了哪个本地化包吗? (我该怎么做?)

【问题讨论】:

  • 如果我被有效地问到“提到你时应该使用什么语法性别?”,我会觉得很奇怪。对于不同性别具有不同语法形式的语言已经提出了自己可接受的解决方案,类似于英语中“their”、“he/she”或“s/he”的用法。有时,巧妙的重写可以完全解决这种妥协的需要。与您的翻译人员合作。
  • 我已经在提示输入用户名了;我只是要在旁边扔一个“男性/女性”分段控件。
  • 男/女/雌雄同体/其他/说来话长/不想回答?
  • 在其他情况下您会使用哪些性别后缀?传统上,性别语言使用男性性别来表示性别未知的人。真的更好吗?您是否考虑过这个问题,或者您只是希望这个问题会消失?
  • @Jeremy。用英语表达这个问题的“标准”方式是“你使用哪些代词?”

标签: iphone ios localization


【解决方案1】:

[NSLocale systemLocale] 毫不奇怪地返回系统设置的语言环境。

不过,您最好查询用户正在使用的语言。您可以通过在 NSUserDefaults 中查询键“AppleLanguages”并从返回的数组中获取第一个值来执行此操作。该值是用户选择的语言。

【讨论】:

    【解决方案2】:

    [NSLocale preferredLanguages] 在位置 0 处返回用户在设置应用程序中选择的语言。

    【讨论】:

    • 我认为这更可取,因为用户可能会将他们的手机带到不同的地区,我希望他们以他们的母语阅读我的应用文本。
    猜你喜欢
    • 1970-01-01
    • 2018-12-04
    • 1970-01-01
    • 1970-01-01
    • 2019-11-26
    • 2020-10-15
    • 1970-01-01
    • 1970-01-01
    • 2020-01-27
    相关资源
    最近更新 更多