最近在忙着一个国外项目,天天加班,没时间更新博客.就简单讲讲国际化的知识. 首先,我们使用字符串,必须用NSLocalizedString(key,comment),这样我们在不同的Localizable.strings对key指定不同的值,系统会根据当前系统语言,去不同的lproj找不同的字符串.用个图显示吧: 我们应用只支持中文,英文,所以只建了zh-Hans.lproj和en.lproj,然后在Localizable.strings指定了不同的值.举例如下:  这样程序就能根据系统语言,去…
iOS国际化和genstrings所有子文件夹本地化字符串 在最近的一个繁忙的对外工程.每天加班.没有时间更新博客.简单谈一下知识的国际化. 首先,我们使用串.必须NSLocalizedString(key,comment),所以,我们是不同的Localizable.strings对key指定不同的值,系统会依据当前系统语言.去不同的lproj找不同的字符串.用个图显示吧: 我们应用仅仅支持中文,英文,所以仅仅建了zh-Hans.lproj和en.lproj,然后在Localizable.str…
在真正将国际化实践前,只知道通过NSLocalizedString方法将相应语言的字符串加载进来即可.但最近公司项目的新需求增加英文版本,并支持应用内无死角切换~,这才跳过各种坑实现了应用内切换语言,并记录至此. 环境 系统环境: iOS7 - iOS9 开发环境: Swift2 & Xcode7 DEMO: LocalDemo 这个Demo的功能主要是切换语言后相应的界面文字&图片以及搜索引擎都会随语言变化.我们会围绕这个DEMO进行讲解,读者可以先下载这个Demo运行看下效果再往下 i…
iOS 国际化.根据系统不同的语言自动切换. 首先.选择项目 Add new file -->iOS -->Resource -->Strings File  . 命名为Localizable.strings 打开Localizable.strings.它的格式是这样的 "KEY" = "CONTENT"; 请按这种格式来输写,比如我这里是这样定义的 "testKey" = "qingjoin_english"…
IOS Translation Tool(IOS国际化翻译工具) 介绍 当IOS项目国际化的时候,手工去翻译每一个字符串是一件非常痛苦的事情.尤其是当项目中存在N多种语言.而且又很难保证,手工翻译的准确性.所以写了一个Python的翻译脚本来做这个事情. 使用说明 1.在setting.ini中进行配置. NEEDTRANSLATION 为要翻译的语种 SOURCESPATH 为项目源文件目录 en- 为具体翻译语种的配置.aim是翻译好的文件的目标路径, dic是字典文件路径,needtr是还…
原文网址:http://www.cocoachina.com/ios/20151120/14258.html 在真正将国际化实践前,只知道通过NSLocalizedString方法将相应语言的字符串加载进来即可.但最近公司项目的新需求增加英文版本,并支持应用内无死角切换~,这才跳过各种坑实现了应用内切换语言,并记录至此. 环境 系统环境: iOS7 - iOS9 开发环境: Swift2 & Xcode7 DEMO: LocalDemo 这个Demo的功能主要是切换语言后相应的界面文字&图…
本文介绍iOS国际化包含以下几种: 应用名称,文字,图片和xib 首先在工程里添加支持的语言,这里用了English和中文 然后创建两个.strings类型的文件,文件名分别为InfoPlist和Localizable,其中第一个可以为任何一个名字,随你高兴 选中之前创建的两个.strings文件,然后在右边的属性设置点击Localizable,选中一个语言,然后再把其他你想要的语言勾选上,这时候你的.strings文件就有多个选项了,可以在不同的选项中添加不同的键值对来设置在不同语言系统下的值…
iOS开发Swift篇—(三)字符串和数据类型 一.字符串 字符串是String类型的数据,用双引号""包住文字内容  let website = "http://www.wendingding.com" 1.字符串的常见操作 (1)用加号 + 做字符串拼接 let scheme = "http://" let path = “www.wendingding.com” let website = scheme + path // website的…
iOS 国际化多语言设置 方式一: 1. 在storyboard中创建好UI,然后在 project 里面  Localizables 栏目里面,添加你需要的语言:默认是Englist; 比如这里我添加了 简体中文 2.添加完之后,原来的Main.storyboard 就会多了一个国际化的语言配置文件 3. 点击 Main.strings 文件,就可以在这里配置中文的语言:里面自动添加现在storyboard上面创建好的UI控件的代码,直接在这里修改即可:此时sotyboard上设计的理解为 英…
转自http://www.cocoachina.com/industry/20140526/8554.html 简单说,国际化是一个应用程序国际兼容性设计的过程,比如: 1.以用户母语处理文本输入和输出: 2.处理不同的日期.时间以及数字格式: 3.利用适当的历法和时区处理数据:   国际化是一项你和开发者通过利用系统提供的API来实现的活动,并在代码上做一些补充和修改,从而让应用的中文版.阿拉伯语版本和英文版一样好.   相比之下,本地化仅仅是把应用的用户界面和资源翻译成不同的语言,这是你可以…
1. 在项目里面创建一个InfoPlist.strings 文件 2. 到PROJECT---Info---Localizations下面添加你想要添加的语言 3. 在InfoPlist.strings文件里添加代码: CFBundleDisplayName="应用名称";…
一. 针对两种文件的国际化处理 代码中即.m文件的国际化 首先在你需要进行国际化处理的字符串外面加一层NSLocalizedString,注意中文也是可以的哦 textfield.text = [NSString stringWithFormat:NSLocalizedString(@"使用帮助", nil)]; NSLocalizedString是一个定义在NSBundle.h中的宏,其用途是寻找当前系统语言对应的Localizable.strings文件中的某个key的值. 第一个…
genstrings是苹果推出的一个用于自动从代码的nslocalizedstring等提取生成国际化字符串的工具: xcode的国际化文件方案一直以来都不太智能,我记得很久以前.strings文件库上的修改好像是必然会引发冲突的(别人在你修改过程中提交): 在代码中写完国际化的字符串还要单独打开.strings文件进行编辑,比较麻烦. 鉴于此,很多开发者在这个方面也做了不少的努力: 比如xcode里面对genstrings的扩展或者是改写,支持merge功能等(在github里面搜索genst…
一.创建工程.添加语言…
最近一个一直在迭代的老项目收到一份新的开发需求,项目需要做国际化适配,简体中文+英文.由于项目中采用了storyboard和纯代码两种布局方式,所以国际化也要同时实现.上网查了些资料,实现了更改系统语言后,修改app内语言的问题.具体国际化方式可以参考下文: 3分钟实现iOS语言本地化/国际化 这篇文章讲的比较详细,很容易实现. 这个需求实现后不久,产品又给我提了一个需求,让我要在app内实现语言切换.还好之前的国际化也做了些准备,不慌不慌. 接下来就是方案的选定,通过广泛查阅资料,得出两个备选…
因为iOS和XCode版本号更新得太快的原因,导致网上非常多文章都失去了时效性,或许再过两三个月我这篇文章也将走上这条路,但起码能够让现阶段看到的人对iOS的国际化有个比較清楚的认识. NSLocalizedString的定义 来看宏定义部分: #define NSLocalizedString(key, comment) \ [[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil] 第二个參数com…
开发的移动应用更希望获取更多用户,走向世界,这就需要应用国际化,国际化其实就是多语言.这篇文章介绍Xcode4.5以后的国际化,包括应用名国际化和应用内容国际化.如果是Xcode4.5之前版本请参考. 应用内容国际化 1.新建一个名为Localizable.strings的资源文件 2. 在右侧属性选择器中可以看到多了个按钮 Localize: 3.点击Localize按钮,如果没做过国际化处理,选项只有English,做过了国际化处理会有多个选项.     4.点击Localize按钮,点击工…
同学面试时遇到一个问题,面试官问他,有一个现成的APP马上要上线了,怎么在不改原来代码,也不改xib.storyboard里的文字的情况下快速实现国际化.这里应同学请求写下此教程.反正国际化的步骤都要搞一遍,干脆写一个详细.全面的教程. 一.配置国际化语言 点击progect->info->localizations下的‘+’,选择你要支持的语言,默认支持英文,如下图 二.应用名称国际化 新建一个Strings File类型的文件,且名称必须为InfoPlist. 选中刚刚新建的文件,在Xco…
开发的移动应用更希望获取更多用户,走向世界,这就需要应用国际化,国际化其实就是多语言.这篇文章介绍Xcode4.5以后的国际化,包括应用名国际化和应用内容国际化.如果是Xcode4.5之前版本请参考. 应用内容国际化 1.新建一个名为Localizable.strings的资源文件   2.在右侧属性选择器中可以看到多了个按钮 Localize:   3.点击Localize按钮,如果没做过国际化处理,选项只有English,做过了国际化处理会有多个选项.         4.点击Localiz…
#import <Foundation/Foundation.h> void other(); void string2date(); int main(int argc, const char * argv[]) { @autoreleasepool { other(); string2date(); } ; } void other() { // 获得NSCalendar NSCalendar *calendar = nil; if ([NSCalendar respondsToSelec…
一 数字 1.使用Foundation.h可以直接导入所有的头文件. 在XCode中,想查看某个方法帮助,可以将光标放在方法上,按住option键同时单击即可. 官方文档:https://developer.apple.com/library/mac/navigation/   2.数字对象   objective-c有几种基本数据类型,int float long等,不过有些时候比如NSArray需要使用数字对象,而前面几种基本数据类型并不是对象,此时我们可以使用NSNumber.   对于每…
用Titanium开发的ios应用中,当调用系统组件时,尽管手机已经设置了系统语言为中文,但那些组件的界面却仍为英文.比如调用iphone中的相册组件,其界面为: 那么怎么让它跟系统语言保持一致呢? 在原生的ios开发中,只需要在info.plist中把 CFBundleAllowMixedLocalizations 设置为 true 就行了,代表Localized resources can be mixed,就是允许库使用本地语言资源. 那么在Titanium中该怎么做呢? 其实也很简单,T…
如何将你的app内的语言可以根据系统语言切换而切换呢?这是本篇所要解决的问题.废话先不说,上软硬件环境: 硬件:Macbook Pro 软件:Xcode 5.1 代码:https://github.com/boycehe/iOS--- 第一步:如图所示:右击选择 New File 第二步:选择Resource,新建一个String File文件 第三步:名字必须为Localizable,点击create 第四步:选择工程 第五步:选择语言 第六步:设置 第七步:既然是国际化嘛,肯定是一个以上语言…
1.在APPproject的新建一个Localizable.strings File->new file--->Resource --->strings File 2.添加需要的语言文件 如InfoPlist.strings(English) InfoPlist.strings(Simplified) . 3.为应用程序 APP的名称国际化: 在 InfoPlist.strings(Simplified)中输入 CFBundleDisplayName="测试"; In…
写给自己看: 1.先创建一个国际化文件,用于描述在不同的区域环境,显示不同的value.文件名必须是Localizable.strings,文件的内容稍后再写.…
事实上这个错误非常easy,就是当我们在国际化的时候,写key,写着写着就忘了加 ";" 所以查看一下自己的Localization文件就能够了…
SBJson包的下载地址在上一篇文章中. 能够使用NSDictionary中的键值对来拼接Json数据,很方便,也能够进行嵌套,直接上代码: //開始拼接Json字符串 NSDictionary *dataDictionary= [NSDictionary dictionaryWithObjectsAndKeys:@"mac",@"mac", @"game",@"game", @"devicetoken",…
一,.xib 1.首先选中xib文件,在右边的inspector中选择对应的国际化语言,如下图…
首先我们要分三个步骤讲解怎么一步步实现app名字国际化.内容国际化.一键切换国际化的: 一.app设置内容或者可以说是app名字或者可以说Info.Plist中的东西国际化  app名字国际化  1.首先新建文件command+N 选择,然后next 记住文件名字必须为:InfoPlist,要不然系统识别会失败! 然后点击create,文件工程中会多一个不带箭头的文件 2.添加需要用到的语言 添加需要的语言(简体中文.繁体中文)英文为默认的语言不需要添加! 然后直接点击finish 3.添加语言…
1第一步是我们获取数据源 一般我们都是从接口请求数据 NSArray *subColumnsArray = nil; NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers  error:nil]; //保存到数据源,用数组接收 if ([dict isKindOfClass:[NSDictionary class]]){ subColumns…