cocos2d-x 获得系统语言繁体

IosLocalUtil.h

#ifndef __IOS_LOCALUTIL_H__
#define __IOS_LOCALUTIL_H__
class IosLocalUtil{
public:
    static IosLocalUtil*getInstance();
    bool getIsTaiwanChinese();
    std::string getCurrentLanguage() const;
private:
    static IosLocalUtil*_instance;
};
#endif /* __IOS_LOCALUTIL_H__*/

IosLocalUtil.mm

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import <GameKit/GameKit.h>

#import "IosLocalUtil.h"
#import "cocos2d.h"

////////////////////////////////////////////////////////////////////////////////////////////////
//                                              objective-c
////////////////////////////////////////////////////////////////////////////////////////////////
@interface LocalUtilHelper: NSObject <GKLeaderboardViewControllerDelegate, GKAchievementViewControllerDelegate, GKMatchmakerViewControllerDelegate, GKMatchDelegate>{

}
//@property (nonatomic, assign) IosLocalUtil*cCaller;
+ (LocalUtilHelper *)getInstance;
- (NSString*)getCurrentLanguage;
@end
//---------------------------------------------------------------------------------------

@implementation LocalUtilHelper

//静态初始化 对外接口
static LocalUtilHelper *_instance = nil;
+ (LocalUtilHelper *) getInstance {
    if (!_instance) {
        _instance = [[LocalUtilHelper alloc] init];
    }
    return _instance;
}

- (id)init {
    if ((self = [super init])){

    }
    return self;
}

 //得到本机现在用的语言
- (NSString*)getCurrentLanguage{
    NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
    NSArray* languages = [defaults objectForKey:@"AppleLanguages"];
    NSString* currentLanguage = [languages objectAtIndex:0];
    return currentLanguage;
}
@end

////////////////////////////////////////////////////////////////////////////////////////////////
//                                              c++
////////////////////////////////////////////////////////////////////////////////////////////////
IosLocalUtil* IosLocalUtil::_instance=nullptr;
IosLocalUtil* IosLocalUtil::getInstance(){
    if(_instance==nullptr){
        _instance=new IosLocalUtil();
       // [LocalUtilHelper getInstance].cCaller=_instance;
    }
    return _instance;
}

std::string IosLocalUtil::getCurrentLanguage() const{
    NSString* nsStr=[[LocalUtilHelper getInstance] getCurrentLanguage];
   // const char* lpfaceName = [nsStr UTF8String];
    std::string language=[nsStr UTF8String];
    return language;
}

/**
 * HongKong:zh-HK, Taiwan:zh-TW, fanTi: zh-Hant-CN
 */
bool IosLocalUtil::getIsTaiwanChinese(){
#if(CC_TARGET_PLATFORM==CC_PLATFORM_IOS)
    NSString* nsStr=[[LocalUtilHelper getInstance] getCurrentLanguage];
    std::string language=[nsStr UTF8String];
    return language=="zh-HK"||language=="zh-TW"||language=="zh-Hant-CN"||language=="zh-Hant";
#endif
return false;
}
时间: 2024-08-01 20:55:15

cocos2d-x 获得系统语言繁体的相关文章

Android - 系统语言(language)定制资源值(values)

系统语言(language)定制资源值(values) 本文地址: http://blog.csdn.net/caroline_wendy 语言代码参考: http://www.loc.gov/standards/iso639-2/php/code_list.php 创建资源值文件夹(values), 添加语言标记, 常用英文和繁体中文: values-en: 英文 values-zh-rTW: 繁体中文

Android开发实用技巧:判断当前系统语言版本

Locale locale = getResources().getConfiguration().locale; String language = locale.getLanguage(); 以上代码可以获取到当前系统的语言码,中文的语言码为ch,英文的语言码为en,完整的语言码如下: bn_BD孟加拉语(孟加拉)  bo_CN 博多语(中国)  bo_IN 博多语(印度)  ce_PH 塞布安诺语(菲律宾)  de_LI 德语(列支敦士登)  fa_AF 波斯语(阿富汗)  fa_IR 波

cefSharp 设置运行时系统语言

在使用用CefSharp使用过程中,系统用了很多第三方控件.这些控件很多能够根据浏览器设置的语言来进行控件展示对应语言. 在cefSharp可以设置系统语言,代码如下: CefSharp.Settings setting = new CefSharp.Settings(); string flashPath = Application.StartupPath+ @"\Plug\gcswf32.dll"; setting.AddPluginPath(flashPath); //设置语言

Android切换系统语言,自动更新应用界面显示语言

需要完成的功能是点击指定按钮后修改系统语言,并让应用跟随系统切换语言 private void switchLanguage(){ IActivityManager am = ActivityManagerNative.getDefault(); Configuration config = null ; try { config = am.getConfiguration(); //更改系统语言 if (config.locale.equals(Locale.SIMPLIFIED_CHINES

IOS APP 国际化(实现不跟随系统语言,不用重启应用,代码切换stroyboard ,xib ,图片,其他资源)

接了个变态的需求,要在程序内切换程序语言实现国际化. 可以先看看这个,比较详细. http://blog.csdn.net/xwren362922604/article/details/17190061 看完之后问题来了, 1,工程里面大量的 xib  或 storyboard 里面的UI 设定了text ,怎么实现让它们动态加载语言[非设置系统语言重启] 2,一个简单的思路,当代码触发切换语言 发个通知让 内存里的viewController 刷新UI的text .[工程里这么都vc 每个都加

Linux字符集和系统语言设置-LANG,locale,LC_ALL,POSIX等命令及参数详解

博文说明[前言]: 本文将通过个人口吻介绍Linux字符集和系统语言设置,包括LANG,locale,LC_ALL,POSIX等命令及参数详解的相关知识,在目前时间点[2017年6月21号]下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏差,将会完善该博文内容. 本文参考文献引用链接: 1.http://blog.csdn.net/z4213489/article/details/7937894[好文,必看]

iOS 应用程序内部国际化,不跟随系统语言

前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言不跟随系统语言,由应用自己进行控制,通过配置多个语言文件,根据用户的选择动态获取不同文件夹下的语言文件,显示在界面上. 最后把用户选择的语言持久化到本地,下次运行时读取. 二.应用内的国际化 1.新建工程 新建Single View Application工程,取名为MyInternational.

003_1-当前系统语言的相关知识

查看当前的系统语言 方法一:locale  LANG  代表这现在系统的语系 locale -a  查看系统所支持的所有语言 方法二:echo $LANG 通过LANG变量,查看当前系统的语言 查看系统的默认语言 cat /etc/sysconfig/i18n 纯字符界面不支持中文,如果在纯字符界面中,强制将当前语言修改为中文,将会出现乱码 linux中文支持 图形界面 如果有图形界面,可以正确显示中文 第三方工具 如果使用第三方远程工具,只要在连接的时候,选择正确的语言就可能显示中文.已 Xs

切换debian8系统语言环境

想切换操作系统的默认语言环境,可以使用如下命令,而不用重新安装系统: 查看操作系统的语言: # env | grep LANG 使用root导入要使用的系统语言: # export LANG=en_US.UTF-8 重新配置本地语言环境: # dpkg-reconfigure locales 会弹出一个窗口,要求你选择系统要使用的本地语言.如图所示: 选中后,不会立即生效,需要重启即可生效.