美文网首页iOS dev程序员iOS Developer
华山论剑之iOS从本地走向世界(国际化文件的设置)

华山论剑之iOS从本地走向世界(国际化文件的设置)

作者: 神经骚栋 | 来源:发表于2016-05-21 15:05 被阅读186次
    走向世界的骚栋

    问题缘由:这两天我一直在使用系统的SeachBar作为自己的项目的搜索框,问题是当SeachBar在活跃状态的时候出现的取消按钮是英文的,不管我怎么改模拟器的系统设置都不能修改文字设置,那么我想到的第一个方法就是重新定义取消按钮,后来发现这个方法非常的麻烦,所以,脑洞大开的我有想到了另外的一个方法那就是使用国际化文件配置.


    国际化文件的配置我们可以理解为当我们的手机设置的语言不同,那么App所对应的语言也会发生改变.这里我们首先介绍一个配置较为简单的方法,那就是笼统的配置一下国际化文件,不对其具体的单词或者词语进行配置.

    第一步, 如下图,首先我们先找到配置的位置

    第二步,我们点击加号,添加对应的我们所需要的语言.这里我就选择简体中文了,然后出现对话框选择要更改的,我们全选,然后点击"完成"就完成国际化文件的基本配置了.


    上一个方法,是比较基础的陪着国际化文件,如果我们只想对其中的几个单词或者文字进行国际化配置,该如何设置呢?

    第一步, 和上一个方法一样,我们先进行上一个方法的步骤,然后我们就如下添加国际化文件,对一些特别的单词进行区分.注意的问题就是创建出来的文件名称必须是Localizable.strings.

    创建国际化语言文件

    第二步,如图选中Localizable.strings文件,在Utilites中,点击Localizable选项

    第三步,创建后,你的Localizable.strings文件下将挂在英文的语言支持文件。

    第四步,
    在Localizable.strings(Chinese(Simplified))中,加入如下代码:

    "hello"="嗨 !!!!";
    

    在Localizable.strings(English)中,加入如下代码:

    "hello"="Hi !!!!";
    
    

    第五步,这样我们基本就大功告成了,现在我们就要调用一下NSLocalizedString这个宏就可以了,我在这里就使用ViewController做了一下简单的演示.代码如下(可视化做的,😂),然后我们通过设置手机或者模拟器中的语言,就可以改变我们工程项目中的所对应文字表现形式了.

    
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @property (strong, nonatomic) IBOutlet UILabel *firstLabel;//lable
    
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
    
        self.firstLabel.text = NSLocalizedString(@"hello", @"");
        
    }
    
    @end
    
    
    总结:项目做国际化的改变,从上面来看还是很简单的,只要注意一下国际化文件的名称就可以,好了,今天就说到这,希望这一篇博客能对大家有所帮助.

    相关文章

      网友评论

      本文标题:华山论剑之iOS从本地走向世界(国际化文件的设置)

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