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切换启动语言
-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
主要完成 如下内容
- 工程名称配置plist 国际化
- 字符串国际化
- 自定义字符串国际化
- 图片国际化