• Swift


    在Xcode中我们可以很方便的将APP适配各种本地化语言。苹果的框架已经帮我们把不同语言的数据分离开,包括图片,声音,视频,文档,用户界面文字(甚至代码中编写的用户界面文字),它们会被建立在同一个bundle中,便于我们管理。

     
    下面分别介绍字符串,图片,应用程序名是如何实现多语言本地化,以及如何切换语言进行测试。

    效果图如下:
        
        

    1,本地化字符串
    (1)项目配置 -> “Info” -> “Localizations”区域下,可以看到工程默认只支持英文,我们可以再添加中文语言。
    (选择添加语言之后,会出现要选择的本地化文件,这里我们默认都选择)




    (2)在工程中,右键添加文件(New File...),选择Resource下的Strings File文件类型,文件名定义为“Localizable.strings”


    (3)选中刚创建的“Localicable.strings”文件,在右侧属性面板中点击“Localize...”创建本地化资源
      

    (4)分别在英文和中文资源下,输入如下键值对
    1
    2
    3
    4
    5
    //英文资源里
    "Welcome" = "Welcome to hangge.com";
     
    //中文资源里
    "Welcome" = "欢迎来到hangge.com";

    (5)使用NSLocalizedString函数来访问Localizable.strings资源文件。
    NSLocalizedString函数第一个参数为对应的键名,第二个是自定义的说明,给开发或翻译人员看的。

    1
    myLabel.text = NSLocalizedString("Welcome", comment: "Welcome")


    2,本地化图片

    (1)选中需要本地化的图片,同上面一样点击“Localize...”创建本地化图片资源。


    (2)打开工程目录,可以看到在中文资源和英文资源下都有这个图片,把需要替换的图片替换掉。


    (3)图片使用同平时一样
    1
    myImage.image = UIImage(named: "logo.png")


    3,应用名称的本地化 

    (1)要实现应用名称根据语言环境显示不一样的名称,只需创建InfoPlist.strings文件,并像上面一样实现本地化资源。 
    .

    (2)分别在英文和中文InfoPlist.strings文件中定义CFBundleDisplayName值。
    1
    2
    3
    4
    5
    //英文资源里
    "CFBundleDisplayName" = "hangge";
     
    //中文资源里
    "CFBundleDisplayName" = "航歌";


    4,在Xcode中切换语言 

    为了调试国际化,我们除了可以进入模拟器或真机里切换系统语言。也可以在Xcode中配置相关项,使Debug运行时预览不同语言和地区APP的界面效果。
     
    (1)选择“Product” -> “Scheme” -> “Edit Scheme...”
     
    (2)切换语言后运行工程

  • 相关阅读:
    THUWC 2019 第二轮 纯口胡题解
    Codeforces Round #607 (Div. 1) Solution
    Codeforces Round #606 (Div. 1) Solution
    CSP-S 2019 简要题解
    NOIP 2018 简要题解
    luogu P5605 小 A 与两位神仙
    luogu P5606 小 K 与毕业旅行
    AtCoder Grand Contest 040 简要题解
    AtCoder Grand Contest 035 简要题解
    AtCoder Grand Contest 036 简要题解
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/4843616.html
Copyright © 2020-2023  润新知