`
lizaochengwen
  • 浏览: 665497 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

IOS程序国际化

 
阅读更多
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


分享到:
评论

相关推荐

    iOS语言国际化

    在iOS应用开发中,语言国际化是一项重要的功能,它允许应用程序根据用户的设备设置显示不同语言的内容。这使得应用具有更广泛的用户基础,能够适应全球化的市场需求。本篇文章将深入探讨iOS的本地化国际化机制,以及...

    ios国际化 多语言支持

    iOS 国际化多语言支持 iOS 开发中,国际化是非常重要的一步,特别是在项目...通过使用多语言支持和 genstrings 命令,我们可以轻松地实现 iOS 项目的国际化和多语言支持,从而提高应用程序的用户体验和市场竞争力。

    iOS 本地化国际化 demo

    在iOS应用开发中,本地化和国际化是一项至关重要的任务,它允许我们的应用程序适应不同地区和语言的用户。这个“iOS 本地化国际化 demo”显然提供了一个实际操作的例子,帮助开发者理解如何在iOS项目中实现这一功能...

    iOS国际化(APP国际化)

    iOS国际化,也称为APP国际化,是指为iOS应用开发过程中实现多语言支持的过程,使得应用程序能够适应不同国家和地区的用户需求。这一过程涉及到资源文件、代码、用户界面等多方面的调整和优化,确保无论用户身处何处...

    iOS 国际化 demo

    在iOS开发中,国际化是一项重要的功能,它使得应用程序能够适应全球不同地区的用户需求,支持多种语言。本“iOS国际化demo”旨在提供一个实践示例,帮助开发者理解和实现iOS应用的多语言支持。以下是对该主题的详细...

    iOS应用程序国际化

    iOS应用程序的国际化是一个重要的开发环节,它涉及到将应用的内容、界面和功能适配到不同的语言和地区,以便全球用户都能方便地使用。这篇文章将深入探讨iOS国际化的基本概念、关键技术和最佳实践。 首先,我们需要...

    ios程序本地化

    ### iOS程序本地化详解 #### 一、引言 随着全球化的不断推进,软件和应用程序的国际化变得尤为重要。为了满足不同国家和地区用户的需求,开发者必须考虑如何让自己的应用能够适应多种语言环境。在iOS开发中,这个...

    ios 国际化 本地化

    国际化(Internationalization,通常缩写为i18n)和本地化(Localization,简称l10n)是iOS应用开发中的重要环节,旨在使应用程序能够适应不同国家和地区的语言、文化以及用户习惯。这两个概念虽然经常一起提及,但...

    最新iOS国际化NSLocalizedString

    国际化是指设计和构建应用程序,使其能够容易地适应不同的语言和地区。而本地化是国际化的一部分,具体指将应用翻译成特定语言并调整为适应特定文化的过程。 NSLocalizedString宏是Objective-C中的一个关键工具,...

    ios 国际化

    本篇文章将详细探讨iOS应用的国际化,包括应用程序名称的国际化和应用程序内的内容国际化。 首先,我们来讨论**应用程序名称的国际化**。在iOS中,应用的名字不仅出现在App Store上,还可能显示在用户的设备上。...

    swift-iOS国际化工具

    Swift-iOS国际化工具是iOS应用开发中的一个重要组成部分,它使得应用程序能够支持多种语言,从而适应全球用户的需求。在iOS开发中,国际化不仅仅是翻译文本那么简单,它涉及到资源的本地化、日期时间格式、货币符号...

    iOS应用程序本地化

    在iOS开发中,本地化(Localization)和国际化(Internationalization)是两个重要的概念,它们使得应用程序能够适应全球不同地区的用户需求。本地化是指将应用程序的内容、界面和功能适应特定地区的语言、文化和...

    iOS 国际化代码

    在iOS开发中,国际化是一项重要的任务,它使得应用程序能够适应全球不同地区的用户需求。"iOS国际化代码"这个项目提供了一个示例,展示了如何实现应用程序的多语言支持,包括字符串、应用名称、图片以及界面文件的...

    iOS国际化,点击切换语言

    在iOS应用开发中,国际化(Internationalization)是一个重要的特性,它允许应用程序支持多种语言,以满足全球用户的需求。本文将深入探讨如何实现“点击切换语言”功能,即用户无需退出应用,即可在应用内部自由...

    ios程序的本地化

    1. 本地化与国际化(Internationalization):国际化是为程序设计一个可适应多种语言和文化环境的框架,而本地化则是将这个框架填充上特定区域的语言和内容。 2. 本地化资源:包括文本、图片、日期格式、货币符号、...

    iOS国际化 应用内切换语言更新版

    在iOS应用开发中,国际化(Internationalization)是一个重要的特性,它允许你的应用程序支持多种语言,以便全球用户可以使用他们的首选语言来与应用交互。本文将深入探讨如何在iOS应用中实现国际化,特别是如何实现...

    ios-国际区号选择器 PhoneAreaCodeViewController.zip

    7. **国际化区号库**:可能使用公开的数据源(如ISO 3166-1或E.164标准)来获取最新、最准确的区号信息。 8. **用户交互**:确保良好的用户反馈,例如选中状态的视觉提示,滑动动画等。 9. **测试**:进行单元测试...

    iOS完整程序代码

    14. **国际化和本地化**:如果代码包含多语言支持,你将学习到如何为应用添加不同的语言版本。 通过"森哥每日旅游推荐"这个项目,你不仅能学习到iOS开发的基础知识,还能接触到实际应用中常见的功能实现,如推荐...

    应用程序国际化

    应用程序国际化,特别是针对iOS平台的国际化,是一项至关重要的任务,它允许开发者构建的应用程序能够适应全球用户的不同语言和文化需求。iOS国际化不仅涉及到文本翻译,还包括日期、时间、数字、货币格式以及图像和...

    3分钟实现iOS语言本地化 - 国际化(图文详解) - CocoaChina_让移动开发更简单1

    本文将详细介绍如何在 3 分钟内实现 iOS 语言本地化,涵盖了国际化的概念、实现步骤和相关技术细节。 国际化概念 国际化是指使软件系统能够适应不同语言和地区的需求,使其能在全球范围内使用。国际化的目的是使...

Global site tag (gtag.js) - Google Analytics