欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

iOS 本地化应用程序汇总 xcodeiOS本地化国际化iPhone

程序员文章站 2022-06-02 10:31:18
...

      最近要做一个应用要实现本地化,因为使用的是xcode4,应用程序本地化的问题跟以前的版本还是有些不同,在网上找了些资料对于xcode4以上的版本资料还是相对较少,有些最后要通过手动创建文件,这样操作实在是太麻烦,所以经过一个下午的研究,总算是成功了一点点,还是庆幸一下。先给出结果。

英语:                                                                    中文:


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhoneiOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
             

                      

具体实现如下:

静态本地化 加载的文件,如xib文件,图像文件,还有实现应用程序名本地化

动态本地化: 显示的字符串本地化

 

一。先做准备:设置程序本地化

在xcode点击程序图标:点击Info选项->Localizationn,点击“+”,选择要添加的语言,简体中文选择Chinese(zh-Hans)

你会在你工程目录下发现多了个文件夹,“zh-Hans.lproj",x-code使用.lproj作为其本地化文件夹的扩展名。


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone

 

二。设置xib文件本地化, 图像本地化的方法是一样道理的,可以根据用户的显示语言加载不同的xib文件

操作:点击xib文件,在IB窗口中选择选项选择“File Inspecter",也就是第一个选项,选择“Localization->"+"选择添加的语言,

效果如下,原来的xib文件就会出现三角形,其下有两个文件,因为我的为storyboard,但效果是一样的。就可以实现将其本地化了,非常简单吧

 


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone

 

三。设置应用程序名本地化,

      设置应用程序名存储在应用程序的Info.plist文件中,我们例子实际上为Localize-Info.plist,选择文件,并不需要对文件进行本地化,而是使"Info.strings"本地化就可以了,在Localize.Info.plist,空白处右键,选择Show Raw Keys/Values,就会看到应用程序名实际为CFBundleDisplayName,我们只需要在对应的 Info.plist中添加以下代码就可以了

英文版:

CFBundleDisplayName = "Localization";

 中文版:

CFBundleDisplayName = "本地化";


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
 效果图:


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhoneiOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone

 

 

四、加载的字符串本地化,

      原理:在代码中将加入的字符串加入NSLocalizeString宏中,启动程序时,系统将根据语言加载相应的文件得到其对应的字符串文件,这个字符串可以通过系统将NSLocalizedString中的宏生成名为“Localizable.strings”的文件,当然你可以自己去创建这个文件,然后手动是添加对应的字符串。,

    labelName.text = NSLocalizedString(@"Name", @"The name is ");
    labelPassword.text  = NSLocalizedString(@"Password:",@"The password is");

 NSlocalizeString 第一个参数是内容,第二个参数将会转化为字符串文件里的注释。

转化方法如下 :先关闭项目,打开终端,进入到项目的目录,输入genStrings 文件名.m就可以将该文件中的宏转化为相应的字符串文件,

iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone

效果如下:会看到生成"Localizable.strings",

打开文件,就可以交给翻译人员去翻译了


iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone

 

 

最后附上例子,这是必须的

总算把截图搞上去了,分享一下。

  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 13.7 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 12.8 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 93.2 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 80.1 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 176.4 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 43.6 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 43.6 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 43.6 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 109.3 KB
  • iOS 本地化应用程序汇总
            
    
    
        xcodeiOS本地化国际化iPhone
  • 大小: 78.5 KB