美文网首页
swift3-app国际化

swift3-app国际化

作者: 宇宙超级无敌小小静 | 来源:发表于2017-04-07 15:40 被阅读166次

    【摘要】

    本文主要介绍了应用程序名称的国际化和storyboard中的国际化,以English和简体中文为例。

    【效果图】

    在系统【设置】中选择【通用】-【语言与地区】-【iPhone语言】-【简体中文】
    8A1041C5-9A24-42F5-A165-FEF311863198.png C726CB3F-B0ED-4718-B717-24D8D9CAFFFE.png
    在系统【设置】中选择【通用】-【语言与地区】-【iPhone语言】-【English】
    640D2DF3-7F84-49A4-9EE5-2AB2442F0715.png 1BD08908-CA35-4990-913C-9C018DFD270A.png

    【准备工作】

    先在项目中添加中文国际化设置,系统默认English
    点击Project,点击Localization下面的+,选择Chinese

    D2409196-DBFC-4D5A-B6F8-0E1D3FDF3AE3.png

    【功能实现】

    • 应用程序名称国际化

      1.新建资源文件,【file】-【new】-【File】,选择Resource中选择Strings File,将文件名命名为InfoPlist.strings

    0ACCCFEB-B3BB-46DD-8628-9225E1BDAB31.png

    2.选中文件InfoPlist.strings,打开右侧属性选择器,在Localization中点击Localize,选择中文简体localize

    940FE44E-16A0-453B-84C7-FF3B43EF8545.png A887033F-C71D-481E-9A9F-361911CEEF46.png

    3.选中文件InfoPlist.strings,打开右侧属性选择器,在Localization中同时选中English


    9364E037-DD85-48C2-9BA9-1D6EF777E43E.png

    此时会看到InfoPlist.strings下面有两个文件

    AFAE6F7E-37E8-4FCD-9AE2-293DF8919381.png

    4.Chinese文件的内容如下:

    CFBundleDisplayName="国际化";
    

    5.English文件的内容如下:

    CFBundleDisplayName="Internationlization";
    

    到此 已经完成应用程序名称的国际化

    • storyboard国际化

      1.选中storyboard,打开其文件检查器,在localization中选中base ,english和chinese的复选框,此时storyboard中的文件结构如下:

    FA13A0EC-D520-4221-9E93-97A8A3C3FC28.png

    2.在storyboard中绘制如下界面

    1BD08908-CA35-4990-913C-9C018DFD270A.png

    3.选中控件,右侧打开属性检查器,每个控件都有自己独特的ObjectID,根据ObjectID来设置需要国际化的信息

    CCF6A14A-B879-4CC7-B63F-4AA6438DF203.png

    在storyboard中下面的Main.strings(Chinese(Simplified))中设置如下:

    
    /*class="UIBarButtonItem";objectID="Oja-2J-x4k";title="完成"*/
    "Oja-2J-x4k.title"="完成";
    
    /*class="UINavigationItem";objectID="Pfw-ny-h2s";title="国际化"*/
    "Pfw-ny-h2s.title"="国际化";
    
    /*class="UIBarButtonItem";objectID="GD9-fB-dQv";title="编辑"*/
    "GD9-fB-dQv.title"="国际化";
    
    /*class="UILabel";objectID="Bys-l1-zMg";text="总有一天你会足够成熟到能重新读童话故事。"*/
    "Bys-l1-zMg.text"="总有一天你会足够成熟到能重新读童话故事。";
    
    /*class="UILabel";objectID="NcA-yo-Yjw";text="用户名"*/
    "NcA-yo-Yjw.text"="用户名";
    
    /*class="UILabel";objectID="02E-Xv-ez9";text="密码"*/
    "02E-Xv-ez9.text"="密码";
    
    /*class="UITextField";objectID="BMA-Fh-bJ9";placeholder="请输入用户名"*/
    "BMA-Fh-bJ9.placeholder"="请输入用户名";
    
    /*class="UITextField";objectID="R1H-dU-JEp";placeholder="请输入密码"*/
    "R1H-dU-JEp.placeholder"="请输入密码";
    

    在storyboard中下面的Main.strings(English)中设置如下:

    /*class="UIBarButtonItem";objectID="Oja-2J-x4k";title="Done"*/
    "Oja-2J-x4k.title"="Done";
    
    /*class="UINavigationItem";objectID="Pfw-ny-h2s";title="I18n"*/
    "Pfw-ny-h2s.title"="I18n";
    
    /*class="UIBarButtonItem";objectID="GD9-fB-dQv";title="Edit"*/
    "GD9-fB-dQv.title"="Edit";
    
    /*class="UILabel";objectID="Bys-l1-zMg";text="Some day you will be old enough to start reading fairy tales again."*/
    "Bys-l1-zMg.text"="Some day you will be old enough to start reading fairy tales again .";
    
    /*class="UILabel";objectID="NcA-yo-Yjw";text="UserName"*/
    "NcA-yo-Yjw.text"="UserName";
    
    /*class="UILabel";objectID="02E-Xv-ez9";text="Password"*/
    "02E-Xv-ez9.text"="Password";
    
    
    /*class="UITextField";objectID="BMA-Fh-bJ9";placeholder="Please enter your user name"*/
    "BMA-Fh-bJ9.placeholder"="Please enter your user name";
    
    /*class="UITextField";objectID="R1H-dU-JEp";placeholder="Please enter your password"*/
    "R1H-dU-JEp.placeholder"="Please enter your password";
    

    【关于作者】

    作者还是个小菜鸟,欢迎各路大神来本qq群指教:457156158

    相关文章

      网友评论

          本文标题:swift3-app国际化

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