zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    jmeter_逻辑控制器
    Mysql-10 存储过程
    Mysql-9 视图
    NAS性能测试
    win系统定时任务设置
    服务端监控有哪些客户端链接了服务
    centos8 添加端口号
    centos8下安装gitlab服务
    【Unity】Galgame视觉小说游戏 其脚本解释器的一种实现
    【个人向】ctf比赛出的一道逆向游戏题——GameTime题解
  • 原文地址:https://www.cnblogs.com/llguanli/p/6841454.html
Copyright © 2011-2022 走看看