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切换启动语言

iOS语言本地化/国际化一些技巧_第1张图片

iOS语言本地化/国际化一些技巧_第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. 图片国际化

你可能感兴趣的:(IOS)