Cocostudio学习笔记(5) Text + TextAtlas + TextBMFont

下午一群大学生到我们公司參观学习,搞得我好紧张。于是滔滔不绝的给他们介绍了怎样开发一款游戏...

今晚研究的控件就是三个label:Text,TextAtlas,TextBMFont

我先在cocostudio中将三种标签都拖入到场景中。分别命名为:label。atlas。bitMap。最后导出project。在cocos2dx载入该Widget
cocos2d::ui::Widget* labelUI = GUIReader::getInstance()->widgetFromJsonFile("LabelUI/LabelUI_1.json");
this->addChild(labelUI,2);
这里可能有人会说:既然之前已经声明了cocos2d::ui的作用域,那在这里为什么不直接使用Widget呢?我的回答是,我也是新手,对于这些API的写法还不够习惯,所以仅仅能通过这样的反复书写的方式加深印象。

一、先看Text
1、将label从Widget中取出来,代码例如以下:
Text* m_label = static_cast<Text*>(Helper::seekWidgetByName(labelUI,"label"));
m_label->setPosition(Point(300,300));

2、看下Text的源代码
static Text* create();//创建
static Text* create(const std::string& textContent,
					const std::string& fontName,
					int fontSize);

void setText(const std::string& text);//设置显示的文本
const std::string& getStringValue();获得text中的文本内容

ssize_t getStringLength();//获得text中字符串长度
事实上和cocos2dx中的Label的用法几乎相同,这里就不多看了。

二、TextAtlas
1、将label中Widget中取出

TextAtlas* m_atlas = static_cast<TextAtlas*>(Helper::seekWidgetByName(labelUI,"atals"));
m_atlas->setPosition(Point(400,300));

2、无语

三、TextBMFont
1、将label从Widget中取出

TextBMFont* m_bmf = static_cast<TextBMFont*>(Helper::seekWidgetByName(labelUI,"bitMap"));
m_bmf->setPosition(Point(200,300));

2、无语

四、总结,上面我之所以没有做更深入的介绍,是由于我发现cocostudio中的Text与cocos2dx中的Label差点儿没啥区别,所以我也就懒得介绍。之前博客对3.0后的Label介绍得都挺清楚了。

尊重原创。转载请注明来源:http://blog.csdn.net/star530/article/details/37370285
原文地址:https://www.cnblogs.com/llguanli/p/6841454.html