欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

cocos2dx 3.1.1学习笔记 中文字符的使用

程序员文章站 2022-05-15 16:51:17
...

这样使用时会出问题: auto label = Label::create(你好,fonts/3.ttf,28); 最好的解决办法是使用外置的xml文档/plist文档储存中文字符(必须使用UTF-8编码) 新建文档string.xml如下: ?xml version=1.0 encoding=UTF-8? !DOCTYPE plist PUBLIC - //Apple//D

这样使用时会出问题:

auto label = Label::create("你好","fonts/3.ttf",28);


最好的解决办法是使用外置的xml文档/plist文档储存中文字符(必须使用UTF-8编码)


新建文档string.xml如下:


br> //Apple//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd">


title
是男人就坚持20秒
new_game
新游戏
setting_game
设置
quit_game
退出
s
为什么这么难?!



每个key对应一个string


在使用时:

Dictionary* dictionary = Dictionary::createWithContentsOfFile("string.xml");
CCString* str = (CCString*)dictionary->objectForKey("s"); //这里获取了字符串
const char* s = str->getCString(); //类型转换

auto label = Label::create(s,"fonts/3.ttf",28);

也有这样使用的:

TTFConfig ttfConfig("fonts/3.ttf",28,GlyphCollection::CUSTOM);
Dictionary* dictionary = Dictionary::createWithContentsOfFile("fonts/string.xml");
CCString* str = (CCString*)dictionary->objectForKey("s");
const char* s = str->getCString();

Label* label = Label::createWithTTF(ttfConfig, s, TextHAlignment::CENTER);