1. 程式人生 > >iOS語言本地化/國際化一些技巧

iOS語言本地化/國際化一些技巧

程式碼獲取國際化語言陣列

獲取當前app使用的語言


     
      NSArray *langArr1 = [[
      NSUserDefaults standardUserDefaults] valueForKey:
      @"AppleLanguages"];
     
     
      NSString *language1 = langArr1.firstObject;
     
     
      NSLog(
      @"模擬器語言:%@",language1);
     

切換語言 en

代表 英語, zh-Hans 簡體中文, zh-Hant 繁體中文.


     
      NSArray *lans = @[
      @"en"];
     
     
      [[
      NSUserDefaults standardUserDefaults] setObject:lans forKey:
      @"AppleLanguages"];
     

修改scheme切換啟動語言

圖1

圖2

-AppleLanguages (zh-Hans) 代表簡體中文
-AppleLanguages (zh-Hant)

 代表繁體中文
-AppleLanguages (en) 代表英文
其它小夥伴們自己總結一下也可以 注意 空格

國際化取不同圖片程式碼


     
      #import "ViewController.h"
     
     
     
      @interface ViewController ()
     
     
      @property (
      weak, 
      nonatomic) 
      IBOutlet 
      UIImageView *imageView;
     
     
     
      @end
@implementation ViewController - ( void)viewDidLoad { [ super viewDidLoad]; //xxx 是國際化 圖片的名字 例如xxx.png //如果是 xxx.jpg 必須寫把xxx 替換成xxx.jpg NSString *imageName = NSLocalizedString( @"xxx", nil); self.imageView.image = [ UIImage imageNamed:imageName]; } @end

下面是我寫的一個demo
主要完成 如下內容

  1. 工程名稱配置plist 國際化
  2. 字串國際化
  3. 自定義字串國際化
  4. 圖片國際化