`
119568242
  • 浏览: 426924 次
  • 性别: Icon_minigender_1
  • 来自: 深圳/湛江
社区版块
存档分类
最新评论

[ios] NSLocale 获取当前语言版本

    博客分类:
  • ios
 
阅读更多

获取当前手机情况NSLocale

获取当前语言版本:   

NSArray *languages = [NSLocalepreferredLanguages];

  NSString *currentLanguage = [languages objectAtIndex:0];

    NSLog ( @"%@" , currentLanguage);

 

============================================

Chinese(zh-Hans)中文简体 English 英文

============================================

/*NSLocale.h

Copyright (c) 2003-2012, Apple Inc. All rights reserved.

*/

 

#import <Foundation/NSObject.h>

#import <CoreFoundation/CFLocale.h>

 

@classNSArray, NSDictionary, NSString;

 

// Toll-free bridged with CFLocaleRef

 

@interface NSLocale : NSObject <NSCopying, NSSecureCoding>

 

- (id)objectForKey:(id)key;

 

- (NSString *)displayNameForKey:(id)key value:(id)value;

 

@end

 

@interface NSLocale (NSExtendedLocale)

 

- (NSString *)localeIdentifier;  // same as NSLocaleIdentifier

 

@end

 

@interface NSLocale (NSLocaleCreation)

 

+ (id)systemLocale;

+ (id)currentLocale;

+ (id)autoupdatingCurrentLocale NS_AVAILABLE(10_5, 2_0);

 

- (id)initWithLocaleIdentifier:(NSString *)string;

 

@end

 

@interface NSLocale (NSLocaleGeneralInfo)

 

+ (NSArray *)availableLocaleIdentifiers;

+ (NSArray *)ISOLanguageCodes;

+ (NSArray *)ISOCountryCodes;

+ (NSArray *)ISOCurrencyCodes;

+ (NSArray *)commonISOCurrencyCodes NS_AVAILABLE(10_5, 2_0);

+ (NSArray *)preferredLanguages NS_AVAILABLE(10_5, 2_0);

 

+ (NSDictionary *)componentsFromLocaleIdentifier:(NSString *)string;

+ (NSString *)localeIdentifierFromComponents:(NSDictionary *)dict;

 

+ (NSString *)canonicalLocaleIdentifierFromString:(NSString *)string;

+ (NSString *)canonicalLanguageIdentifierFromString:(NSString *)string;

 

+ (NSString *)localeIdentifierFromWindowsLocaleCode:(uint32_t)lcid NS_AVAILABLE(10_6, 4_0);

+ (uint32_t)windowsLocaleCodeFromLocaleIdentifier:(NSString *)localeIdentifier NS_AVAILABLE(10_6, 4_0);

 

typedef NS_ENUM(NSUInteger, NSLocaleLanguageDirection) {

    NSLocaleLanguageDirectionUnknown = kCFLocaleLanguageDirectionUnknown,

    NSLocaleLanguageDirectionLeftToRight = kCFLocaleLanguageDirectionLeftToRight,

    NSLocaleLanguageDirectionRightToLeft = kCFLocaleLanguageDirectionRightToLeft,

    NSLocaleLanguageDirectionTopToBottom = kCFLocaleLanguageDirectionTopToBottom,

    NSLocaleLanguageDirectionBottomToTop = kCFLocaleLanguageDirectionBottomToTop

};

 

+ (NSLocaleLanguageDirection)characterDirectionForLanguage:(NSString *)isoLangCode NS_AVAILABLE(10_6, 4_0);

+ (NSLocaleLanguageDirection)lineDirectionForLanguage:(NSString *)isoLangCode NS_AVAILABLE(10_6, 4_0);

 

@end

 

 

FOUNDATION_EXPORT NSString * const NSCurrentLocaleDidChangeNotification NS_AVAILABLE(10_5, 2_0);

 

 

FOUNDATION_EXPORT NSString * const NSLocaleIdentifier;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleLanguageCode;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleCountryCode;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleScriptCode;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleVariantCode;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleExemplarCharacterSet;// NSCharacterSet

FOUNDATION_EXPORT NSString * const NSLocaleCalendar;// NSCalendar

FOUNDATION_EXPORT NSString * const NSLocaleCollationIdentifier; // NSString

FOUNDATION_EXPORT NSString * const NSLocaleUsesMetricSystem;// NSNumber boolean

FOUNDATION_EXPORT NSString * const NSLocaleMeasurementSystem;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleDecimalSeparator;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleGroupingSeparator;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleCurrencySymbol;      // NSString

FOUNDATION_EXPORT NSString * const NSLocaleCurrencyCode;// NSString

FOUNDATION_EXPORT NSString * const NSLocaleCollatorIdentifier NS_AVAILABLE(10_6, 4_0);  // NSString

FOUNDATION_EXPORT NSString * const NSLocaleQuotationBeginDelimiterKey NS_AVAILABLE(10_6, 4_0);// NSString

FOUNDATION_EXPORT NSString * const NSLocaleQuotationEndDelimiterKey NS_AVAILABLE(10_6, 4_0);// NSString

FOUNDATION_EXPORT NSString * const NSLocaleAlternateQuotationBeginDelimiterKey NS_AVAILABLE(10_6, 4_0);// NSString

FOUNDATION_EXPORT NSString * const NSLocaleAlternateQuotationEndDelimiterKey NS_AVAILABLE(10_6, 4_0);// NSString

 

// Values for NSCalendar identifiers (not the NSLocaleCalendar property key)

FOUNDATION_EXPORT NSString * const NSGregorianCalendar;

FOUNDATION_EXPORT NSString * const NSBuddhistCalendar;

FOUNDATION_EXPORT NSString * const NSChineseCalendar;

FOUNDATION_EXPORT NSString * const NSHebrewCalendar;

FOUNDATION_EXPORT NSString * const NSIslamicCalendar;

FOUNDATION_EXPORT NSString * const NSIslamicCivilCalendar;

FOUNDATION_EXPORT NSString * const NSJapaneseCalendar;

FOUNDATION_EXPORT NSString * const NSRepublicOfChinaCalendar NS_AVAILABLE(10_6, 4_0);

FOUNDATION_EXPORT NSString * const NSPersianCalendar NS_AVAILABLE(10_6, 4_0);

FOUNDATION_EXPORT NSString * const NSIndianCalendar NS_AVAILABLE(10_6, 4_0);

FOUNDATION_EXPORT NSString * const NSISO8601Calendar NS_AVAILABLE(10_6, 4_0);

 

 

分享到:
评论

相关推荐

    ios-获取国际手机区号.zip

    在iOS中,我们可以利用`CoreTelephony`框架来获取设备当前的网络信息,包括SIM卡中的国家代码。但是,这仅限于设备已插入SIM卡并且有可用的网络连接。以下是如何使用`CoreTelephony`获取国家代码的步骤: 1. 引入`...

    swift-iOS手动切换显示语言

    4. **切换语言**:当用户选择一种语言后,我们需要更改应用的当前语言环境。这可以通过以下步骤实现: - 获取用户选择的语言代码。 - 创建一个新的`NSLocale`对象,使用选择的语言代码。 - 使用`UserDefaults`来...

    IOS应用源码——获取全球当前所有时区的当前时间TestTimeZone.zip

    另外,如果需要考虑用户设备的首选语言,我们还需要使用`NSLocale`来获取正确的本地化名称。 此外,考虑到性能优化,如果时区列表非常大,我们可能需要考虑异步加载或分批处理,避免阻塞主线程。在大型项目中,我们...

    iOS应用开发中使用NSLocale类实现对象信息的本地化

    - `[NSLocale lineDirectionForLanguage:[[NSLocale currentLocale] objectForKey:NSLocaleLanguageCode]]` 可以获取当前语言的文本排列方向(左对齐、右对齐或双向)。 6. **获取用户的语言偏好设置列表**: - `...

    iOS开发多语言切换

    - 当检测到语言变化时,更新当前的`NSLocale`对象,并重新启动应用程序以加载新的语言资源。 5. **用户界面布局调整** - 不同语言的文本长度可能不同,可能导致用户界面布局出现问题。因此,在设计界面时,应考虑...

    iOS-语言本地化

    这一特性使得开发者能够为全球用户提供更加友好、个性化的使用体验,无需为每个语言版本创建单独的应用程序。以下是对这个主题的详细解释: 1. **本地化概念**: 本地化(Localization,简称L10n)是指将软件或...

    ios-中英文语言切换.zip

    5. **代码实现**:在代码层面,可以使用`[[NSBundle mainBundle] preferredLocalizations]`获取当前应用支持的语言列表,或者使用`[[NSBundle mainBundle] localizedStringForKey:@"key" value:@"" table:nil]`来...

    iOS 国际化 demo

    开发者可以通过NSLocale类来获取当前设备的语言和地区信息,从而提供更加个性化的体验。 七、资源文件夹结构 在项目中,资源文件夹(如图片、音频等)也需要根据语言进行组织。每个语言有独立的资源文件夹,如“en...

    iOS 本地化国际化 demo

    只需在项目设置中启用本地化,然后为每个语言添加新的本地化版本,Xcode 将自动生成相应的资源文件。 在进行国际化时,开发者还需要考虑字符集、日期和时间格式、数字格式、货币符号等问题。这些可以通过NSLocale类...

    ios 国际化(项目名和内容)

    在处理storyboard或xib文件中的文本时,可以直接在Interface Builder中设置text field的Localization属性,这样Xcode会在不同的语言版本中自动创建对应的文本。 对于应用名称的国际化,需要在InfoPlist.strings文件...

    根据手机系统语言设置显示不同内容

    在Android系统中,我们可以使用`Resources`类的`getConfiguration()`方法来获取当前的配置信息,其中包括了系统语言。而在iOS的Swift中,我们可以利用`UserDefaults`或`NSLocale`来获取用户首选的语言。 在Android...

    多种语言转换

    开发者可以通过`[[NSLocale preferredLanguages] objectAtIndex:0]`获取当前首选语言,从而动态调整应用内容。 6. **Base Internationalization**:这是一种优化的本地化方法,允许开发者在一个共享的资源文件...

    3分钟实现iOS语言本地化/国际化(图文教程)

    iOS语言本地化/国际化详解...我们可以使用NSLocale类来获取当前的语言设置,然后根据语言设置来显示对应的本地化内容。 本文详细讲解了iOS语言本地化/国际化的实现方法和步骤,为大家提供了一个系统的学习和参考指南。

    应用程序国际化

    3. ** storyboard / xib 文件**:这些是界面布局文件,可以设置为特定的语言版本,支持多语言显示。 二、资源管理 1. **Base Internationalization**:iOS 5引入的一种新方法,使用一个基础故事板或XIB文件作为...

    ios-仿大众点评日历控件.zip

    7. 日历框架(Calendar Framework):开发者可能会利用iOS的内置`Calendar`框架,获取关于日期的信息,如星期几、节假日等,以便在日历中正确显示。 8. MVC(Model-View-Controller)架构:为了保持代码的组织性...

    动画闪屏---启动图片区分中英文环境DEMO

    例如,在iOS中,可以使用`NSLocale`类来获取当前设备的首选语言;在Android中,可以使用`Resources.getSystem().configuration.locale`来获取。 5. **资源管理**:在iOS项目中,启动图片通常存储在`LaunchScreen....

    值得收藏的iOS开发常用代码块

    2. 获取系统当前语言: 在iOS应用中,可以使用`NSLocale`来获取用户设备上的首选语言。例如: ```swift NSString *currentLanguage = [[NSLocale preferredLanguages] objectAtIndex:0]; NSLog(@"currentlanguage = ...

    iphone通讯录的简单实现

    在iOS中,可以使用`NSLocale`和`NSString`的分类方法来获取字符串的首字母,考虑到中文姓名,可能需要对中文字符进行特殊处理,确保按照正确的汉字拼音顺序进行排序。例如,可以使用`NSString`的`...

    国别

    你可以通过代码创建一个`NSLocale`实例,或者使用预定义的常量,如`.current`来获取当前设备的地区设置。`NSLocale`包含了诸如语言代码、国家代码、货币符号、数字格式、日期和时间格式等信息。 2. **...

Global site tag (gtag.js) - Google Analytics