ios应用的多语言支持

ios应用的多语言支持主要包括应用名称的多语言、字符串的多语言、sotrybard多语言等等
要添加多语言,首先需要在设置中添加用增加的语言:PROJECT-Info-Localizations点击“+”,选择要增加的语言。如图所示:


ios应用的多语言支持_第1张图片
添加多语言.jpg

应用名称的多语言

  • File-New-File-iOS-Resource-Strings File新建一个String File文件,命名为InfoPlist.strings
  • File Inspector-Localization中点击你要添加的多语言,如图所示:


    选择多语言
  • 此时第一步新建的InfoPlist.strings文件左边出现了一个三角形,点击后会出现多个文件,每一个文件对应一种语言。在对应的文件中加入:
    "CFBundleDisplayName" = "对应语言的应用名称"

storyboard的多语言

  • 选中storyboard文件,File Inspector-Localization中点击你要添加的多语言
  • 此时storyboard文件左边出现一个三角形,点击后出现多个文件,每一个文件对应一种语言。
  • 以Main.strings(Chinese (Simplified))为例:
    文件中列出storyboard中已有的一些控件的名字,按如下形式:
/* Class = "UIButton"; normalTitle = "send"; ObjectID = "UeC-WJ-dc6" */
"UeC-WJ-dc6.normalTitle" = "send"

其中,ObjectID可以在storyboard中点击相应的控件,在Identity inspector中可以找到,将send改为button即可

"UeC-WJ-dc6.normalTitle" = "发送"

字符串的多语言

  • File-New-File-iOS-Resource-Strings File新建一个String File文件,命名为Localizable.strings
  • File Inspector-Localization中点击你要添加的多语言
    例如代码中要使用"time"这个字符串,
  • 在Localizable.strings(Chinese (Simplified))中,添加如下代码:
    "time" = "时间";
  • 在Localizable.strings(English)中,添加如下代码:
    "time" = "time";
  • 然后在代码中在要使用"time"字符串的地方,用如下代码代替即可。
    NSLocalizedString(@"time", nil)
    备注:NSLocalizedString(key, comment)
    • key:进行本地化的唯一字符串标识
    • comment:对字符串的注释,可为nil

iOS/android多语言支持

iOS与android同时开发时,android的多语言文件为values-xx,其中xx代表国家的简写,例如bg表示保加利亚语,此时应该找iOS中对应的Localizable.strings(Bulgarian)文件

ios应用的多语言支持_第2张图片
android多语言文件

目前项目中用到的多语言
  1. Spanish 西班牙 es
  2. Estonian 爱沙尼亚 et
  3. Finnish 芬兰 fi
  4. French 法国 fr
  5. Hindi 印度语 hi
  6. Croatian 克罗地亚 hr
  7. Hungarian 匈牙利 hu
  8. Indonesian 印度尼西亚 id
  9. Italian 意大利 it
  10. Lithuanian 立陶宛 lt
  11. Latvian 拉脱维亚 lv
  12. Macedonian 马其顿 mk
  13. Malay 马来西亚 ms
  14. Norway 挪威 nb
  15. Dutch 荷兰 nl
  16. Polish 波兰 pl
  17. Portuguese 葡萄牙 pt
  18. Russian 俄国 ru
  19. Slovak 斯洛伐克 sk
  20. Slovenian 斯洛文尼亚 sl
  21. Serbian 塞尔维亚 sr
  22. Swedish 瑞典 sv
  23. Thai 泰国 th
  24. Turkish 土耳其 tr
  25. Ukrainian 乌克兰 uk
  26. Uzbek 乌兹别克 uz
  27. Vietnamese 越南 vi
  28. Bulgarian 保加利亚 bg
  29. Czech 捷克 cs
  30. United States 美国 en-rUS
  31. Danish 丹麦 da
  32. German 德国 de
  33. Albanian 阿尔巴尼亚 sq

参考

  1. NSLocalized​String
  2. android开发多国语言对照表

你可能感兴趣的:(ios应用的多语言支持)