语言国际化

1、app名称国际化

添加InfoPlist.strings.从中选择语言种类

eg:简体中文、english    

 在InfoPlist.strings中

//app名称国际化  CFBundleDisplayName

 CFBundleDisplayName = "China";  //en

 CFBundleDisplayName = "China";  //zh-Hans

2、内容国际化

点击刚才创建的这个文件,选择的菜单中的“view”-》“utilities”-》“file inspect” 右侧会看到一些属性的信息

注:一般要求文件名必须是“Localizable.strings”,但简单测验后证明文件名可改。

EG:

    UILabel *label = [[UILabel alloc] init];

    label.frame = CGRectMake(20, 40, 250, 60);

    label.text = NSLocalizedString(@"key", @"注解"); 

    [self.view addSubview:label];

//获得所支持的语言

    NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ]; 

    // 取得 iPhone 支持的所有语言设置 

    NSArray *languages = [defaults objectForKey : @"AppleLanguages" ];

    NSLog ( @"%@" , languages);

//获取当前使用语言

    NSArray *language= [NSLocale preferredLanguages]; 

    NSString *currentLanguage = [language objectAtIndex:0]; 

    NSLog ( @"%@" , currentLanguage);

//用获取到的当前语言,和支持的语言做字符串对比,就可以知道是那种语言

     if([currentLanguage isEqualToString:@"en"])

     {    

         NSLog(@"current Language:en");  

     }

posted @ 2012-11-01 17:11  ip海  阅读(179)  评论(0编辑  收藏  举报