cocos2d-x 实现一个进度条的功能 ProgressTimer

前言:

我们在玩游戏的时候会遇到加载地图资源或者切换场景都会出现滑动条

我们来写一个简单的滑动条

需要用到定时器 因为我们是模仿加载资源

在百度上找了一个滑动条的图片

效果图:
在这里插入图片描述


//创建一个用bar2.png为底层背景的图片
auto loadingBar = ProgressTimer::create(Sprite::create("bar2.png"));

loadingBar->setType(ProgressTimer::Type::BAR);	//设置类型

loadingBar->setBarChangeRate(ccp(1, 0));		//设置进度条的按照x方向移动

loadingBar->setMidpoint(Point(0, 1));			//设置进度的运动方向0到1

loadingBar->setPercentage(0);					//设置滑动条的值

loadingBar->getPercentage();					//获取滑动条的当前值

//创建定时器 每0.1秒进入一次回调
schedule(schedule_selector(LoadLayer::onScheduleCallBack), 0.1f);

//回调函数的声明
void onScheduleCallBack(float dt)
{

}

我在百度找的资源
在这里插入图片描述

注意坑:

左边的是第一次找的 宽度只有64px
我说我的滑动条怎么这么短
写qt 时 UI空间都能设置宽度
怎么设置滑动条的宽度呢
百度了也没有找到 游戏开发和软件开发的概念不一样
原来你的sprite 的 png 的宽度是多少这个滑动条最大就是多少
默认的范围 (0-100)是滑动条值的范围

在这里插入图片描述

回调函数:

在这里插入图片描述

m_sceneManage->goUIScene();

这一句是场景的切换,你们没有,自己自定义的类方法

下一篇我会写一下 【场景的切换】

感谢大家的点赞与关注

发布了171 篇原创文章 · 获赞 386 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/weixin_42837024/article/details/102940832