【玩转cocos2d-x之十七】cocos2d-x中文显示
来源:互联网 发布:数据字典中的条目 编辑:程序博客网 时间:2024/04/28 15:31
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/13014883
cocos2d-x的中文显示其实就是一个UTF-8编码在作怪而已,一种简单的方法就是把文本保存为UTF-8编码即可(注意不是UTF-8 + BOM),建议使用UE,Sublime Text或者EditPlus之类的本文编辑器。这里介绍另一种方法:通过读取xml文件显示中文,这种方法更利于软件的国际化,demo顺便实现了中英文切换。
1.xml文件
先写好一个xml文件(CHN_Strings.xml)。注意记得要以UTF-8编码保存。格式很简单,一个key对应一个string的键值对。如下:
- <dict>
- <key>language</key>
- <string>English</string>
- <key>username</key>
- <string>偶尔e网事</string>
- <key>website</key>
- <string>CSDN博客:http://blog.csdn.net/jackystudio</string>
- </dict>
2.通过CCDictionary读取xml
CCDictionary是利用哈希表算法来进行CCObject管理的一个类。这里不再对它的API及内部实现进行说明了。
2.1.创建词典类实例
- CCDictionary *chnStrings = CCDictionary::createWithContentsOfFile("CHN_Strings.xml");
2.2.通过键(key)获取值(value)
- const char *username = ((CCString*)chnStrings->objectForKey("username"))->m_sString.c_str();
2.3.使用value
- CCLabelTTF* pLabel = CCLabelTTF::create(username, "Arial", 24);//这里创建一个文本
- pLabel->setPosition(ccp(origin.x + visibleSize.width/2,origin.y + visibleSize.height - pLabel->getContentSize().height));
- this->addChild(pLabel, 1);
3.效果
这里我用了2个xml,一个是中文,一个是英文,设置了一个菜单,点击即可调用不同的xml进行中英文的切换,效果如下图。
4.源码下载
http://download.csdn.net/detail/jackyvincefu/6442201
- 【玩转cocos2d-x之十七】cocos2d-x中文显示
- 【玩转cocos2d-x之十七】cocos2d-x中文显示
- cocos2d-x显示中文
- Cocos2d-x--中文显示
- cocos2d-x 中文显示
- 【玩转cocos2d-x之十】cocos2d-x坐标系
- 【玩转cocos2d-x之十】cocos2d-x坐标系
- 【玩转cocos2d-x之十】cocos2d-x坐标系
- 【玩转cocos2d-x之十】cocos2d-x坐标系
- 【玩转cocos2d-x之二十七】CCSequence不能执行CCRepeatForever
- 【玩转cocos2d-x之二十七】CCSequence不能执行CCRepeatForever
- cocos2d-x中文显示问题
- cocos2d-x的中文显示
- cocos2d-x中文显示问题
- cocos2d-x中文显示问题
- cocos2d-x 显示中文字符
- cocos2d-x中文显示问题
- cocos2d-x之中文乱码
- 递归与循环
- 用函数解决素数和回文数--char4
- Qt版权介绍:GPL, LGPL 以及 Commercial 授权
- 特殊三位数--char4
- 求组合数--char4
- 【玩转cocos2d-x之十七】cocos2d-x中文显示
- 常用到ubuntu命令2
- MFC消息映射
- strong和b标签在SEO得分上没有明显区别
- Heap Spray 技术
- Apache Jakarta 项目介绍
- RichEdit控件的使用
- 安装QT5.02
- Oracle数据DOS命令导入导出imp/exp