iOS - 本地化

iOS - 本地化

准备

项目添加本地化:Project - Info - Localizations - 添加需要的支持
English:默认英文
Chinese(Simplified):简体中文
Chinese(Traditional):繁体中文

app icon 图标文字本地化

即提供不同的展示名字;

  • 1 添加Resource - Strings File - 注意命名!
    InfoPlist.strings
  • 2 修改InfoPlist.strings文件的 Localization属性:添加需要的支持
  • 3 然后InfoPlist.strings文件的下面会对应包含需要支持的本地化文件:在每个文件里分别添加
CFBundleDisplayName = "英文";
CFBundleDisplayName = "简体中文";
CFBundleDisplayName = "繁体中文";
注:其实更宏定义很像,就是文本替换;
  • 4 听说需要在 info.plist 中 需要Application has localized display name = YES;(实测好像可以不添加)

字符串本地化

  • 1 添加Resource - Strings File - 注意命名!
    Localizable.strings
  • 2 修改Localizable.strings文件的 Localization属性:添加需要的支持
  • 3 然后Localizable.strings文件的下面会对应包含需要支持的本地化文件:在每个文件里分别添加
"OK"="OK";
"OK"="确定";
"OK"="確定";
注:前面的OK,就是开发过程中使用的"OK"字符串,系统会自动识别本地化,替换相应的字符;
使用:NSLocalizedString(@"Cancel", nil);// 会相应替换字符串,图片名称也是一样可用;
  • 4 部分修改:
    NSLocalizedString(@"OK", @"假的");// 这里的走你,相当于标记,与InfoPlist.strings中对应的注释。举例:
/*!
 *  假的
 */
"OK"="不 OK";

注:没有使用标记的 NSLocalizedString 还是会使用原来的字符,只有对应标记的才替换;

storyboard 的本地化

类似Localizable.strings文件,添加Localization的支持,会出现多个storyboard!如果要画多个sb,我还不如纯代码!为了 偷懒的话,直接在源文件使用字符串本地化,sb就搞一个好了,字符串替换实现简单的本地化;要是界面都要本地化,真是崩溃啊;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、介绍 国际化(Internationalization)是指应用程序在运行的时候,可以根据客户端请求来自的国家...
    JSOfJackChen阅读 4,149评论 0 5
  • 小Demo链接 http://blog.csdn.net/u010828718/article/details/5...
    FredYJH阅读 482评论 0 0
  • 目的 :应用国际化,提供多种语言支持 目录结构:支持特定语言文件,放在特定的目录下。目录命名"<本地代号>.lpr...
    天涯笑笑生阅读 870评论 0 2
  • 简介 项目中需要使用到本地化,通常情况下,本地化需要更换系统语言,然后重启APP才能生效,但是我们需要在APP里面...
    kim_xx阅读 1,653评论 1 3
  • 顺丰上市,请去年在北京某小区被打的快递员敲钟。女朋友做的饭确实不好吃,但她觉得自己做的好吃。小米手机每周让用户提出...
    Sonyfeng阅读 789评论 0 0