【Cocos2d-x3.0学习笔记 04】进一步的学习
1.播放声音
<span style="font-size: 14px; font-family: Arial,Helvetica,sans-serif; background-color: rgb(255,255,255);">playBackgroundMusic适合播放持续时间较长一点的音乐,播放打斗声的时候使用</span> playEffect("pa.wav"); 2.可拉伸的图片
Size visibleSize = Director::getInstance()->getVisibleSize(); Scale9Sprite* scale9Sprite = Scale9Sprite::create("HelloWorld.png"); scale9Sprite->setContentSize(visibleSize); scale9Sprite->setPosition(Point(visibleSize.width/2,visibleSize.height/2)); this->addChild(scale9Sprite,0); 导入扩展库, 在解决方案,添加现有项目:D:worktoolscocostestsHongGGcocos2dextensionsproj.win32libExtensions.vcxproj 在项目右键,属性->通用属性->添加新引用,将libExtensions添加 然后配置属性->c/c++->常规->附加包含目录,编辑,加上一句$(EngineRoot) 最后就是运行了(背景图片是用点九弄的,总感觉怪怪的), 记得加上头文件哦
#include "cocos-ext.h" using namespace cocos2d::extension;
3.CocoStudio UI编辑器木头的版本是V1.4.0.1的,所以我使用的也是一样的。 使用UI Editor 新建工程 ①将文本框拖动到画布中,输入HongGG, ②将按钮拖动到画布中,将resource的图片拖动到特性,资源里 ③将图片拖动到画布中,将resource的图片拖动到特性,文件里 ④导出文件,选中导出全部画布,导出使用大图,裁剪
⑤接下来就是在代码中展示出来了 将导出的复制到项目的resources目录下 导库 D:worktoolscocostestsHongGGcocos2dcocoseditor-supportcocostudioproj.win32libCocosStudio.vcxproj D:worktoolscocostestsHongGGcocos2dcocosuiproj.win32libGUI.vcxproj
引入头文件
#include "editor-support//cocostudio/CCSGUIReader.h" #include "ui/CocosGUI.h" using namespace cocos2d::ui; using namespace cocostudio;
在代码中加入 auto xUI = cocostudio::GUIReader::getInstance()->widgetFromJsonFile("HongGGUI_1.ExportJson");//记载进ui xUI->setPosition(Point(visibleSize.width/2,visibleSize.height/2)); this->addChild(xUI); Button* button1 = (Button*)Helper::seekWidgetByName(xUI,"Button1");//找到名字是Button1的按钮 image1 = (ImageView*)Helper::seekWidgetByName(xUI,"Image1");//找到名字是Image1的图片 button1->addTouchEventListener(this,toucheventselector(HelloWorld::onClick));//给按钮设置监听 按钮的监听(点击按钮设置图片可见或不可见,效果图在上面的上面)
void HelloWorld::onClick(Ref* ref,TouchEventType type){ switch (type) { case Widget::TouchEventType::BEGAN: break; case Widget::TouchEventType::MOVED: break; case Widget::TouchEventType::ENDED: if (image1->isVisible()) { image1->setVisible(false); }else { image1->setVisible(true); } break; default: break; } }
添加一个图片,在常规里有个颜色混合,设置为red 创建个进度条控件,将进度条控件拖到图片的上方,作为图片的子控件,当然,也可以不这样的 将进度设置成50,这里说一句,这里设置的50未必能成功,反正我的是失败了 /* 加载UI */ auto UI = cocostudio::GUIReader::getInstance()->widgetFromJsonFile("MoreUI_1.ExportJson"); UI->setPosition(Point(100,100)); this->addChild(UI); /* 获取控件对象 */ m_hpBar = (LoadingBar*)Helper::seekWidgetByName(UI,"hpBar"); /* 添加点击监听 */ m_hpBar->addTouchEventListener(this,toucheventselector(HelloWorld::onClick)); 移动监听
void HelloWorld::onClick(Ref*,TouchEventType type) { switch (type) { case TouchEventType::TOUCH_EVENT_MOVED: m_hpBar->setPercent(m_hpBar->getPercent() - 1); log("%f",m_hpBar->getPercent()); break; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |