1.1 新建一個Single View app模版項目,命名為Localization。

1.2 新建后,可以看到工作目錄結構文件如下,單擊InfoPlist.strings,查看右邊的屬性,在Localization欄添加語言。

1.3 添加完成后打開對應語言文件,比如English的添加
CFBundleDisplayName="China";
Chinese文件添加
CFBundleDisplayName="中國";

運行,如果此時你的模擬器是中文,你會看到你的程序名稱變成了 中國:

來到設置里把語言設置成 English。此時程序名稱變成了:China

這時,程序名稱的國際化完成了。那里面內容呢?
2、內容國際化
2.1新建Localization.strings文件

2.2 添加語言和1.1環節一樣。
2.3 添加語言內容
添加"Key"="value"; 然后使用時用NSLocalizedString(@"key", @""); 讀取內容.
Localization.strings English文件添加
"key" = "english value";
Localization.strings English文件添加
"key" = "中文內容";
在ViewController.m 中添加UILabel實驗一下
- (void)viewDidLoad
{
[super viewDidLoad];
UILabel *label = [[UILabel alloc] init];
label.frame = CGRectMake(20, 40, 250, 60);
label.text = NSLocalizedString(@"key", @"");
[self.view addSubview:label];
}
運行

設置項里切換英文

3、如何在運行的時候判斷現在運行環境是哪個語言?
3.1 獲得所支持的語言
NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ];
// 取得 iPhone 支持的所有語言設置
NSArray *languages = [defaults objectForKey : @"AppleLanguages" ];
NSLog ( @"%@" , languages);
運行,打印結果:
(
en,
"zh-Hant",
"zh-Hans",
fr,
de,
ja,
nl,
it,
es,
pt,
"pt-PT",
da,
fi,
nb,
sv,
ko,
ru,
pl,
tr,
uk,
ar,
hr,
cs,
el,
he,
ro,
sk,
th,
id,
"en-GB",
ca,
hu,
vi
)
"zh-Hant" 繁體中文
"zh-Hans", 簡體中文
這段代碼獲取當前系統支持的語言。
3.2 獲取當前使用語言
NSArray *languages = [NSLocale preferredLanguages];
NSString *currentLanguage = [languages objectAtIndex:0];
NSLog ( @"%@" , currentLanguage);
打印結果:
en
用獲取到的當前語言,和支持的語言做字符串對比,就可以知道是那種語言了。
if([currentLanguage isEqualToString:@"en"])
{
NSLog(@"current Language:en");
}
本文來自網絡:http://www.cnblogs.com/stoic/archive/2012/07/08/2581298.html
