码迷,mamicode.com
首页 > 其他好文 > 详细

StoryBoard国际化

时间:2015-09-24 13:00:52      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:

通常的国际化设置都是,在代码中对控件命名实现国际化,这回是直接把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文件,好了,现在有了新的控件的值,可以翻译了。

 

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

 

StoryBoard国际化

标签:

原文地址:http://www.cnblogs.com/maple023/p/4834827.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!