1.CCProgressTo进度动作,条形进度条,扇形进度条
1 Bar形进度
CCSprite * proBack = CCSprite::create("barback.png"); proBack->setPosition(ccp(winSize.width/2 - 100,winSize.height/2)); addChild(proBack); CCProgressTimer * left = CCProgressTimer::create(CCSprite::create("bar.png")); left->setPosition(ccp(winSize.width / 2 - 100, winSize.height / 2)); addChild(left); left->setType(kCCProgressTimerTypeBar); left->setMidpoint(ccp(1,0)); left->setBarChangeRate(ccp(1,1)); CCProgressTo * to = CCProgressTo::create(2, 120.0f); left->runAction(CCRepeatForever::create(to)); |
setMidPoint(ccp(x,y));
setMidpoint(ccp(1,0));
x和y均为[0,1]的数值表示进度起始点。比如ccp(0,0)左下角,ccp(1,1)右上角。
setBarChangeRate(ccp(x,y));
x和y均为[0,1]的数值表示,表示水平方向和竖直方向的进度。比如ccp(0,1)表示只有y轴方向有进度。
2 Radial
CCSprite * proBack2 = CCSprite::create("radialback.png"); proBack2->setPosition(ccp(winSize.width / 2 + 100, winSize.height /2)); addChild(proBack2); CCProgressTimer * right = CCProgressTimer::create(CCSprite::create(“radial.png”)); right->setPosition(ccp(winSize.width/2 + 100,winSize.height / 2)); addChild(right); right->setType(kCCProgressTimerTypeRadial); right->setMidpoint(ccp(0.5,0.5)); CCProgressTo * to2 = CCProgressTo::create(2,100.0f); right->runAction(to2); |
3 案例
T17CCProgressTo.h |
#ifndef __T17CCProgressTo_H__ #define __T17CCProgressTo_H__ #include "cocos2d.h" #include "TBack.h" class T17CCProgressTo :public TBack { public: static CCScene * scene(); CREATE_FUNC(T17CCProgressTo); bool init(); }; #endif |
T17CCProgressTo.cpp |
#include "T17CCProgressTo.h" #include "AppMacros.h" CCScene * T17CCProgressTo::scene() { CCScene * scene = CCScene::create(); T17CCProgressTo * layer = T17CCProgressTo::create(); scene->addChild(layer); return scene; } bool T17CCProgressTo::init() { TBack::init(); //创建一个CCSprite CCSprite * proBack = CCSprite::create("barback.png"); //设置精灵所在的位置 proBack->setPosition(ccp(winSize.width / 2 - 100, winSize.height / 2)); addChild(proBack); //创建一个CCProgressTimer作为进度条 CCProgressTimer * left = CCProgressTimer::create(CCSprite::create("bar.png")); //设置进度条所在的位置上。 left->setPosition(ccp(winSize.width / 2 - 100, winSize.height / 2)); //cpp中的 //第一个参数表示的是控制进度条填满的方向, //0表示从左往右运行, //1表示进度条往左边运行 //第二个参数表示上下填满的顺序 //0表示从下往上运行。 //1表示从上往下运行。 //注意:者两个参数的范围都是从0~1 //当中间值设置成为0.5时,进度的显示顺序是从中间开始的 left->setMidpoint(ccp(0, 0.5)); //当设置成1,1的时候上下,左右都能够填满。 left->setBarChangeRate(ccp(0, 1)); //设置类型 left->setType(kCCProgressTimerTypeBar); addChild(left); //动作,表示两秒钟内填满100.0f的值 CCProgressTo * to = CCProgressTo::create(2, 100.0f); //通过下面的方式让这个进度条循环的填充值 left->runAction(CCRepeatForever::create(to)); //创建一个radial的进度条。背景色 CCSprite * proBack2 = CCSprite::create("radialback.png"); //设置radial的显示位置 proBack2->setPosition(ccp(winSize.width / 2 + 100, winSize.height / 2)); addChild(proBack2); CCProgressTimer * right = CCProgressTimer::create(CCSprite::create("radial.png")); //设置它的显示位置 right->setPosition(ccp(winSize.width / 2 + 100, winSize.height / 2)); //表示它的中心点位置,圆心的位置在圆的正中心 right->setMidpoint(ccp(0.5, 0.5)); right->setType(kCCProgressTimerTypeRadial); addChild(right); //两秒钟内填充100% CCProgressTo * to2 = CCProgressTo::create(2, 100.0f); right->runAction(CCRepeatForever::create(to2)); return true; } |
运行结果: |
1.CCProgressTo进度动作,条形进度条,扇形进度条相关推荐
- android 画扇形进度条,扇形进度条 可点击可滑动
扇形进度条.png package com.wuyzh.test; import android.content.Context; import android.graphics.Canvas; im ...
- Qml水波进度条、扇形进度条等其他进度条
前言 分割线 正文 横线进度条 水波进度条 扇形进度条 前言 因为需求所致,需要采用进度条,开始采用的是普通的横线进度条,感觉效果也不错,后面改成了水波进度条,也就是好看了一点,在后面改成了扇形进度条 ...
- cocos2dx-lua 之 ProgressTimer 条形进度条 简单血条的实现
cocos2dx-lua 简单血条的实现 所用资源: blood_bg.png : blood_red.png 直接贴代码: local BloodProgressBar = class(&q ...
- Unity Shader 扇形进度条
我们知道在Unity后面的版本中SpriteRenderer已经有了Tiled功能,可以实现扇形进度条的功能,不过如果我们需要多种样式的进度条,可能就需要写shader了.下面是实现扇形进度条的代码, ...
- 自定义扇形进度条、异步加载网络图片、Activity疯狂旋转动画
效果预览: 正文 1.自定义扇形进度条. 思考: (1)如何绘制扇形. (2)重写onDraw(Canvas canvas) 或 draw(Canvas canvas). (3)是否保留背景设置. ( ...
- cocos 扇形进度条
原文链接: cocos 扇形进度条 上一篇: cocos 简单时钟 下一篇: cocos 随机变色的拖尾 效果 主要是使用进度条组件, 动态设置start和range 代码比较简单, 但是cocos的 ...
- Android小项目之--前台界面与用户交互的对接 进度条与拖动条(附源码)
都知道水果公司(苹果)是己尊重用户体验著称的公司,其设计的产品人性化十足,不得不令后来者赞叹,竞相模仿.iphone的成功就是其典型的案例,做为其移动系统的死对头 Google 想要在市场上分得一杯羹 ...
- QT 进度条、滑动条、调色板、取色器
QT 进度条.滑动条.调色板.取色器 一.简述 记--QT 进度条.滑动条简单的使用例子,调色板练习. 例子1:链接: https://pan.baidu.com/s/1N ...
- 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条
http://blog.csdn.net/terryzero/article/details/3797782 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条 标签: swing编程 ...
- [导入]在IE耗时操作中加入进度条或进度框
在IE耗时操作中加入进度条或进度框 文章来源:http://blog.csdn.net/21aspnet/archive/2005/03/12/317866.aspx 转载于:https://www. ...
最新文章
- 解析 WEB 中所有 URL 的简单牛B代码,先保存起来,方式将来找不到了
- MySQL高可用之mysql-mmm环境搭建
- swift:创建表格UITableView
- SAP Spartacus 2.1.0 加载homepage的逻辑
- java 权限url权限_SpringBootSecurity学习(11)网页版登录之URL动态权限
- 神奇的go语言(面向对象)
- SpringBoot+Dubbo实战demo
- 机器人动力学(雅克比)
- TensorFlow北大公开课学习笔记-3.3反向传播
- 计算机本科生毕业设计题目(二)
- Python 彻底搞懂列表推导式|初级到进阶(实例30+)
- 中国20年互联网的发展史
- 用python做自我介绍_使用Python实现自我介绍
- PCB四层板设计步骤
- gazebo plugins
- 基于C++实现(控制台+界面)通讯录管理系统【100010012】
- NB-IoT低功耗技术与寻呼
- 1分钟了解什么是枚举/以及枚举的使用
- golang常见面试题总结
- java8 合并两个list日期相同为一条
热门文章
- 广度优先搜索算法BFS讲解以及python 实现
- OpenCASCADE:Foundation Classes之异常
- wxWidgets:wxModule类用法
- boost::system::windows_error相关的测试程序
- boost::random模块生成随机 8 个字符密码相关的测试程序
- boost::pfr模块编写自己的 io-manipulator 进行打印的测试程序
- boost::geometry::segment_intersection_points用法的测试程序
- boost::filesystem::copy用法的测试程序
- boost::local_time模块custom_time_zone 和 posix_time_zone 的简单示例
- GDCM:gdcm::Dict的测试程序