大部分情况下,在屏幕上显示除了英文之外的特定语言,通过
[php][statusItem setTitle:@“停止"];[/php]
进行显示,并不是一个好办法,因为你可能希望进行更多其他语言的支持。至少OS X中内建了多语言支持,而且用程序支持这种机制也并不复杂。仔细阅读本文,你会掌握如何用Cocoa实现多语言处理的技巧。
你需要建立一个文件,叫做Localizable.strings,放在*.lproj目录中。比如英文就是English.lproj,中文是 Chinese.lproj(不分繁简), 简体中文是zh_Hans.lproj,繁体是zh_Hant.lproj,语法如下:
[php]"hello" = "你好";
"Start Timer" = "启动计时器";
"Stop Timer" = "停止计时器";[/php]
一个是键,一个是值。
在程序中这样调用:
[php][statusItem setTitle: NSLocalizedString(@"Start Timer", nil)]; [/php]
获取用户语言版本
[php]NSString* preferredLang = [[[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"] objectAtIndex:0];
NSString* logoName = ([preferredLang isEqualToString:@"zh-Hant"])?@"logoCN":([preferredLang isEqualToString:@"zh-Hans"])?@"logoCN":@"logoEN"; [/php]