这个, 由于群里问的朋友比较多, 而本人这段时间公司赶进度, 基本没有时间回复, 所以在此写个教程, 仅适用于于新手, 老鸟轻喷哈, 视频也在同步录制中, 近期可能会先放出一部分,再扯一句废话哈, 推荐一本书, cocos2dX技术精解, 不错的 好了, 言归正传, 我们来看看第一个UI控件CCLabelTTF
用法:
CCLabelTTF::create("想要显示的字符串", "字体样式", 字体大小);
CCLabelTTF* pLabel = CCLabelTTF::create( "Hello World", "Arial", 24); //创建一个CCLabelTTF pLabel->setPosition( ccp( visibleSize.width / 2, visibleSize.height / 2)); //设置它的位置在屏幕的中心 this->addChild(pLabel, 1); //将其添加到当前的图层上面
接着, 我们再来看看设置CCLabelTTF的颜色的属性:
pLabel->setColor( ccc3( 255, 0, 255)); //设置颜色的RGB值为255, 0, 255
然后我们再来修改它的文本, 我们来一个中文, 你好世界
pLabel->setString( "你好, 世界"); //设置文本
咦, 怎么乱码了啊, 好奇怪的说
其实也不奇怪, VS下面的文件编码不是UFT8编码的, 而cocos2dX又只支持UFT8编码, 所以我们的乱码也就来了
当然XCode不存在这个问题
我们是不是不想让他显示乱码啊?(旁白: 你这不是废话吗, 我们又不是变态, 干嘛要乱码, 继续讲)
其实我们可以把文件保存了之后, 然后用文本编辑器给他另存为UFT8的格式
我们选择UFT8格式, 保存
回来看看, 哈哈, 我们亲切, 熟悉的中文是不是又回来了
好了, CCLabelTTF就讲这么多了, 希望大家多实践
我再说一句哈, CCLabelTTF每一次调用setString的时候都会重新有一个新的OpenGL纹理被创建, 意思就是每次都会和创建一个新的一样慢, 所以文字更新比较频繁的时候, 尽量不要使用CCLabelTTF, 而应该使用我们后面讲到的CCLabelBMFont或者CCLabelAtlas