美文网首页
iOS 本地化 国际化

iOS 本地化 国际化

作者: 马上就来 | 来源:发表于2018-03-13 10:35 被阅读12次

配置需要国际化的语言(国际化的准备工作)
App名称本地化
代码中字符串本地化
多人开发情况下的字符串本地化
图片本地化(两种方式两种方式)
查看/切换本地语言
storyboard/xib本地化

配置需要国际化的语言 必要的一步


image.png

(一)应用名称本地化/国际化


image.png

文件名字命名为InfoPlist,且必须是这个名字(因每个人电脑设置差异,此处本人电脑没有显示strings后缀名):
(1)在InfoPlist.strings(english)中加入如下代码:

// Localizable App Name是App在英语环境环境下显示的名称
CFBundleDisplayName = "Localizable App Name";


image.png

(二)代码中字符串的本地化
文件名必须命名为Localizable

image.png

define NSLocalizedString(key, comment) [[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil]

(三)多人开发情况下的字符串本地化
项目开发中,独立开发的还是少数。经常会有多人开发的情况,这种情况,如果多人同时操作本地化文件,极有可能会存在冲突。另一方面,我们又不希望自己的本地化文件受到对方的污染,也就是说,我们不希望对方操作我们的本地化文件。但是上面介绍的代码中字符串的本地化是使用的是默认的文件名"Localizable",因为启动程序时,系统将根据语言加载相应的文件得到其对应的字符串文件,这个字符串可以通过系统将NSLocalizedString中的宏生成名为“Localizable.strings”的文件。那么如何让系统加载我们自己命名的本地化文件而非系统默认的Localizable.strings呢?这就是 NSLocalizedStringFromTable(<#key#>, <#tbl#>, <#comment#>)的用处。
也就是说,如果你的strings文件名字不是Localizable而是自定义的话,如VVS.strings,那么你就得使用NSLocalizedStringFromTable这个宏来读取本地化字符串。

// key:系统根据key取字符串
// tbl:自定义strings文件的名字
// comment:可以不传
NSLocalizedStringFromTable(<#key#>, <#tbl#>, <#comment#>)

(四)图片本地化
本地化图片,有两种方式,第一种方式和本地化代码中的字符串一样,通过NSLocalizedString(key,comment)来获取相应的字符串,然后根据这个字符串再获取图片。

image.png image.png

(五)查看/切换本地语言
NSArray *languages = [[NSUserDefaults standardUserDefaults] valueForKey:@"AppleLanguages"];
NSString *currentLanguage = languages.firstObject;
NSLog(@"模拟器当前语言:%@",currentLanguage);
}

相关文章

  • 2018-02-08

    iOS开发 App本地化(国际化)笔记

  • iOS语言本地化/国际化(图文详解)

    3分钟实现iOS语言本地化/国际化(图文详解)前言语言本地化,又叫做语言国际化。是指根据用户操作系统的语言设置,自...

  • 【技术文章收集】收集

    3分钟实现iOS语言本地化/国际化(图文详解) Apple Watch App开发基础 crash iOS Cra...

  • iOS国际化遇到的那些坑

    本文主要讲述国际化过程中所遇到的那些问题,国际化的详细步骤可以参考:3分钟实现iOS语言本地化/国际化(图文详解)...

  • iOS 本地化/国际化 多语言 开发/上架

    iOS 本地化/国际化 多语言 开发/上架 因为项目有同时面对大陆和海外市场的需求,所以需要做本地化处理。 1)开...

  • 语言国际化与本地化

    国际化与本地化

  • iOS 开发之 国际化/本地化 配置

    一、本地化与国际化 1.1、多语言支持的 国际化 和 本地化 有什么区别?答:i18n:国际化(在其他语言叫国际化...

  • 本地化

    今天做不如修仙的本地化,看到这篇文章很详细3分钟实现iOS语言本地化/国际化,评论区还有应用内切换语言的方法,修改...

  • iOS 本地化 国际化

    配置需要国际化的语言(国际化的准备工作)App名称本地化代码中字符串本地化多人开发情况下的字符串本地化图片本地化(...

  • 前端国际化方案选择

    国际化基础知识 国际化与本地化 国际化与本地化,或者说全球化,其目的是让你的站点支持多个国家和区域。其中国际化是指...

网友评论

      本文标题:iOS 本地化 国际化

      本文链接:https://www.haomeiwen.com/subject/clknfftx.html