zoukankan      html  css  js  c++  java
  • iOS 应用程序本地化

    由于iPhone,iPad等苹果产品在全世界范围内的广泛流行,那么通过App Store下载应用程序的用户也将是来自世界范围的人们,所以开发者在开发过程中势必要考虑到不同语言环境下用户使用,好在iOS拥有健壮的本地化(localization)体系结构,使用它可以轻松的将应用程序翻译成多种语言。

     多语言在应用程序中一般有两种做法:

    一、程序中提供给用户自己选择语言的机会;
    二、根据当前用户当前移动设备的语言自动将我们的app切换对应语言,这里在设置中需要设置的内容有两项:语言(Language)和区域格式(Region Format)。

    第一种做法比较简单完全靠自己的发挥了,这里主要讲第二种做法,主要分一下几点:

    1.本地化应用程序名称------InfoPlist.plist

    2.本地化字符串-----Localizable.strings
    3.本地化图片文件
    4.本地化storyboard文件-----MainStoryboard.storyboard


    1、应用程序本地化步骤:

    (1)首先需要向项目中添加以上需要本地化的元素,也就是根据项目的需要向项目中添加以上文件,一般需要添加的是字符串文件和图片文件,其它两个项目中已经自动创建好了的。

    • 添加字符串文件Localizable.strings(在Resource中选择Strings file)其中要注意的是,文件名称一定是Localizable
    • 添加图片文件就比较简单啦--add file 就可以了

    (2)接着分别对新加入的项目进行本地化


    (3)添加语言,并选择需要本地化的内容




    (4)这样基本的xoode操作就完成了。




    2、下面需要的是对这些与本地化有关的文件进行编辑。


    (1)首先是设置应用程序的名称,这个需要在InfoPlist.plist文件中添加

    CFBundleDisplayName = "应用程序名称";

    (2)接着是本地化字符串,在Localizable.strings文件中添加相应内容(都是一些key-value对)

    如下:

    1. /* The number 5 */  
    2. "LABEL_FIVE" = "Five";  
    3.   
    4. /* The number 4 */  
    5. "LABEL_FOUR" = "Four";  
    6.   
    7. /* The number 1 */  
    8. "LABEL_ONE" = "One";  
    9.   
    10. /* The number 3 */  
    11. "LABEL_THREE" = "Three";  
    12.   
    13. /* The number 2 */  
    14. "LABEL_TWO" = "Two";  

    (3)本地化图片文件

    图片文件的本地化处理一般是在Finder中直接替换文件


    (4)本地化storyboard文件

    这部分的本地化就比较多样了,像这个demo是选择不同的国家国旗。


    程序本地化中用到比较多的是这个方法

    1. NSString *NSLocalizedString(NSString *key, NSString *comment)  
    通过key获取在字符串文件中的value,comment只是一个解释字符串,用于提示该字符串所代表的意义和内容,可以置为nil。

    这部分的内容比较简单,附上一个小demo 下载地址


  • 相关阅读:
    linq查询结果指定列的两种方式
    MVC HTML辅助类常用方法记录
    如何获取google地图、baidu百度地图的坐标
    js解析Json字符串的方法
    EF 官方API
    sqlserver 计算 百分比
    js 判断js函数、变量是否存在
    JS 去字符串空格 总结
    sql 转换日期格式 只保留月份和日期
    C# json object互转工具
  • 原文地址:https://www.cnblogs.com/zsw-1993/p/4879609.html
Copyright © 2011-2022 走看看