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进度动作,条形进度条,扇形进度条相关推荐

  1. android 画扇形进度条,扇形进度条 可点击可滑动

    扇形进度条.png package com.wuyzh.test; import android.content.Context; import android.graphics.Canvas; im ...

  2. Qml水波进度条、扇形进度条等其他进度条

    前言 分割线 正文 横线进度条 水波进度条 扇形进度条 前言 因为需求所致,需要采用进度条,开始采用的是普通的横线进度条,感觉效果也不错,后面改成了水波进度条,也就是好看了一点,在后面改成了扇形进度条 ...

  3. cocos2dx-lua 之 ProgressTimer 条形进度条 简单血条的实现

    cocos2dx-lua 简单血条的实现 所用资源: blood_bg.png :    blood_red.png  直接贴代码: local BloodProgressBar = class(&q ...

  4. Unity Shader 扇形进度条

    我们知道在Unity后面的版本中SpriteRenderer已经有了Tiled功能,可以实现扇形进度条的功能,不过如果我们需要多种样式的进度条,可能就需要写shader了.下面是实现扇形进度条的代码, ...

  5. 自定义扇形进度条、异步加载网络图片、Activity疯狂旋转动画

    效果预览: 正文 1.自定义扇形进度条. 思考: (1)如何绘制扇形. (2)重写onDraw(Canvas canvas) 或 draw(Canvas canvas). (3)是否保留背景设置. ( ...

  6. cocos 扇形进度条

    原文链接: cocos 扇形进度条 上一篇: cocos 简单时钟 下一篇: cocos 随机变色的拖尾 效果 主要是使用进度条组件, 动态设置start和range 代码比较简单, 但是cocos的 ...

  7. Android小项目之--前台界面与用户交互的对接 进度条与拖动条(附源码)

    都知道水果公司(苹果)是己尊重用户体验著称的公司,其设计的产品人性化十足,不得不令后来者赞叹,竞相模仿.iphone的成功就是其典型的案例,做为其移动系统的死对头 Google 想要在市场上分得一杯羹 ...

  8. QT 进度条、滑动条、调色板、取色器

    QT 进度条.滑动条.调色板.取色器 一.简述        记--QT 进度条.滑动条简单的使用例子,调色板练习.        例子1:链接: https://pan.baidu.com/s/1N ...

  9. 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条

    http://blog.csdn.net/terryzero/article/details/3797782 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条 标签: swing编程 ...

  10. [导入]在IE耗时操作中加入进度条或进度框

    在IE耗时操作中加入进度条或进度框 文章来源:http://blog.csdn.net/21aspnet/archive/2005/03/12/317866.aspx 转载于:https://www. ...

最新文章

  1. 解析 WEB 中所有 URL 的简单牛B代码,先保存起来,方式将来找不到了
  2. MySQL高可用之mysql-mmm环境搭建
  3. swift:创建表格UITableView
  4. SAP Spartacus 2.1.0 加载homepage的逻辑
  5. java 权限url权限_SpringBootSecurity学习(11)网页版登录之URL动态权限
  6. 神奇的go语言(面向对象)
  7. SpringBoot+Dubbo实战demo
  8. 机器人动力学(雅克比)
  9. TensorFlow北大公开课学习笔记-3.3反向传播
  10. 计算机本科生毕业设计题目(二)
  11. Python 彻底搞懂列表推导式|初级到进阶(实例30+)
  12. 中国20年互联网的发展史
  13. 用python做自我介绍_使用Python实现自我介绍
  14. PCB四层板设计步骤
  15. gazebo plugins
  16. 基于C++实现(控制台+界面)通讯录管理系统【100010012】
  17. NB-IoT低功耗技术与寻呼
  18. 1分钟了解什么是枚举/以及枚举的使用
  19. golang常见面试题总结
  20. java8 合并两个list日期相同为一条

热门文章

  1. 广度优先搜索算法BFS讲解以及python 实现
  2. OpenCASCADE:Foundation Classes之异常
  3. wxWidgets:wxModule类用法
  4. boost::system::windows_error相关的测试程序
  5. boost::random模块生成随机 8 个字符密码相关的测试程序
  6. boost::pfr模块编写自己的 io-manipulator 进行打印的测试程序
  7. boost::geometry::segment_intersection_points用法的测试程序
  8. boost::filesystem::copy用法的测试程序
  9. boost::local_time模块custom_time_zone 和 posix_time_zone 的简单示例
  10. GDCM:gdcm::Dict的测试程序