StoryBoard国际化

通常的国际化设置都是,在代码中对控件命名实现国际化,这回是直接把storyboard,当做key值进行国际化。

打开你的工程文件,然后点击工程设置的地方如图所示,然后点击加号,然后选择你要添加的语言,然后不用管,提示关联了storyboard,点击finish,所添加的语言就会出现在列表中。

然后你就会发现,你的storyboard多了一个三角的箭头,现在点击,打开他,会看到一个base文件和一个你添加的国际化语言。base就是原来你的storyboard,而下面那个就是对应你的story里面所有控件对应的,国际化语言。

打开你添加的简体中文strings文件,会看到这些东西,就是对应国际化,这下你就知道怎么做了吧,把等号后面的改成你设置的语言,我这里设置的简体中文。

当然你还可以在storyboard和strings文件的设置中点击这个,选择把他变成另一个storyboard,这样就有好几个storyboard了,每个语言一个,我不喜欢这么做,哈哈

问题来了,当你发现,你改变了你的storyboard上面的控件之后,strings国际化文件没有变化,这确实是一个问题,目前有个解决办法是这样的。

把你的新界面与现有的 MainStoryboard.strings 合并

首先,启动“终端”应用程序。然后cd到项目文件夹的 Base.lproj 目录。

例如:

cd /Users/UserName/Projects/HelloWorld/HelloWorld/Base.lproj

在提示符后输入以下命令:

ibtool MainStoryboard.storyboard --generate-strings-file New.strings

(你也可以取别的名字(New.strings))

最后在打开你的xcode的strings文件,好了,现在有了新的控件的值,可以翻译了。

不过我的建议是,开发到最后在进行国际化设置,如果你觉得上面的方法麻烦,可以把现有的翻译保存下来,然后删除掉现在的,用我上面的方法重新生成一个。

时间: 2025-01-02 17:09:19

StoryBoard国际化的相关文章

IOS APP 国际化(实现不跟随系统语言,不用重启应用,代码切换stroyboard ,xib ,图片,其他资源)

接了个变态的需求,要在程序内切换程序语言实现国际化. 可以先看看这个,比较详细. http://blog.csdn.net/xwren362922604/article/details/17190061 看完之后问题来了, 1,工程里面大量的 xib  或 storyboard 里面的UI 设定了text ,怎么实现让它们动态加载语言[非设置系统语言重启] 2,一个简单的思路,当代码触发切换语言 发个通知让 内存里的viewController 刷新UI的text .[工程里这么都vc 每个都加

详述iOS国际化

在真正将国际化实践前,只知道通过NSLocalizedString方法将相应语言的字符串加载进来即可.但最近公司项目的新需求增加英文版本,并支持应用内无死角切换~,这才跳过各种坑实现了应用内切换语言,并记录至此. 环境 系统环境: iOS7 - iOS9 开发环境: Swift2 & Xcode7 DEMO: LocalDemo 这个Demo的功能主要是切换语言后相应的界面文字&图片以及搜索引擎都会随语言变化.我们会围绕这个DEMO进行讲解,读者可以先下载这个Demo运行看下效果再往下 i

iOS国际化——通过脚本使storyboard翻译自增

一. 针对两种文件的国际化处理 代码中即.m文件的国际化 首先在你需要进行国际化处理的字符串外面加一层NSLocalizedString,注意中文也是可以的哦 textfield.text = [NSString stringWithFormat:NSLocalizedString(@"使用帮助", nil)]; NSLocalizedString是一个定义在NSBundle.h中的宏,其用途是寻找当前系统语言对应的Localizable.strings文件中的某个key的值. 第一个

iOS本地化(国际化)过程中只能添加xib本地化,storyboard不能本地化

这是一个很蛋疼的问题,花了我好多时间,其实也就需要将storyboard右侧的base没打勾的打上勾就可以了

国际化后storyboard不能修改,还只有一种语言怎么处理?

这是一个诡异的问题,可能是Xcode的bug,所以用一种简单粗暴的方法 Command-Option-Shift-K 清理,rebulid你的项目能够解决问题!

【IOS 开发】IOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

一. IOS 项目简介 1. IOS 文件简介 创建一个 HelloWorld 项目, 在这个 IOS 项目中有四个目录 : 如下图; -- HelloWorldTests 目录 : 单元测试相关的类和资源; (1) HelloWorld 目录 HelloWorld 目录介绍 : -- 命名规则 : 该目录名称与 IOS 项目名称相同, 是主目录; -- 存放内容 : IOS 项目的 源码文件, 界面设计文件, 资源文件都存放在该目录下; -- 源文件 : Objective C 的 .m 和

IOS中的国际化(一)

序言:IOS中,如果系统的语言或者地区变化了,我们怎样让App中显示的语言, 日期,数字,货币单位的格式随着变化呢?下面将介绍IOS中简单的国际化的方法: 在GitHub上下载一个需要国际化的工程:https://github.com/MikeFighting/Bilingual 打开这个工程你可以当看到如下的一个界面: 然后点开StoryBoard,你会发现里面的控件都非常简单.为了国际话,我们需要往项目中再添加一门语言.添加语言的方式是,Project--->Info--->Localiz

UI到底应该用xib/storyboard完成,还是用手写代码来完成?

UI到底应该用xib/storyboard完成,还是用手写代码来完成? 文章来源:http://blog.csdn.net/libaineu2004/article/details/45488665 参考文章: <关于代码手写UI,xib和StoryBoard> http://blog.csdn.net/likendsl/article/details/38731333 <代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧> ht

程序的国际化

多语言就是程序的国际化.在Xcode中要实现程序的国际化,只需要简单配置,并修改相应的字符串键值对即可. 应用程序的国际化主要包括三个方面:A.程序名称国际化:B.程序内容国际化:C.程序资源国际化 1,Xcode新建项目后,info选项卡中找到Localization的项目,可以添加应用程序需要支持的国际语言. 2,应用名称国际化(InfoPlist.strings) 在InfoPList.strings的不同语言版本的文件中设置相应语言下程序的显示名称 3,内容国际化(Localizable