别踩白块滚动效果的实现
来源:互联网 发布:光纤数据采集卡 编辑:程序博客网 时间:2024/05/19 22:03
<1>成员变量。
private:UIPanel* panel1;UIPanel* panel2;void update(float dt);float getSpeed(float dt);
<2>滚动实现。
bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } UILayer* _uiLayer = UILayer::create();UIPanel* _uiPanel = dynamic_cast<UIPanel*>(GUIReader::shareReader()->widgetFromJsonFile("Scene/BieCaiBaiKuai/BieCaiBaiKuai.json"));_uiLayer->addWidget(_uiPanel);addChild(_uiLayer);//panel1 = dynamic_cast<UIPanel*>(_uiPanel->getChildByName("bgPanel"));CCSize winSize = CCDirector::sharedDirector()->getWinSize();panel2 = dynamic_cast<UIPanel*>(panel1->clone());panel2->setPosition(ccp(0.0f, winSize.height));addChild(panel2); //别忘了添加了,panel1在加载时已经添加里面了。但是panel2不会。//this->scheduleUpdate(); return true;}void HelloWorld::update(float dt){CCSize winSize = CCDirector::sharedDirector()->getWinSize();//*/ panel1->setPositionY(panel1->getPositionY() - getSpeed(dt));panel2->setPositionY(panel1->getPositionY() + winSize.height);if(panel1->getPositionY() < -winSize.height){panel1->setPositionY(0.0f);}//*/}float HelloWorld::getSpeed(float dt){static float time = 0.0f;time += dt;if(time <= 2.0f)return 2.0f;else if(time <= 4.0f)return 10.0f;else if(time <= 6.0f)return 20.0f;else if(time <= 8.0f)return 30.0f;else if(time <= 10.0f){time = 0.0f;return 40.0f;}}
<3>效果截图。
0 0
- 别踩白块滚动效果的实现
- 图像平滑滚动效果的VC实现
- 图像平滑滚动效果的VC实现
- JS实现网页上的滚动效果
- 图像平滑滚动效果的VC实现
- 图像平滑滚动效果的VC实现
- 实现datalist的走马灯效果(滚动)
- js实现图片的点击滚动效果
- IPhone平滑滚动效果的实现
- IPhone平滑滚动效果的实现
- IPhone平滑滚动效果的实现
- Android的实现左右滚动效果
- ScrollView实现TextView一行一行的滚动效果
- jQuery+CSS实现的图片滚动效果
- jquery实现文字的上下滚动效果
- TextView实现滚动显示的效果
- Jquery实现简单的图片滚动效果
- JQuery实现数字滚动增加的效果
- 二叉树 - 最大左高树
- 对常用gpt分区与mbr分区的总结与使用(四)
- CPP -- W2 类和对象初探
- cookie入门理解--自动填写用户登录信息的实现原理
- Matrix67:漫话中文分词算法
- 别踩白块滚动效果的实现
- 逆波兰式与表达式求解
- HDU 1358 Period
- 谢孟媛老师英语拼读03(附我备注)
- C/C++中宏#和##以及@#的作用
- 如何让自己的Android程序、Service永不被系统kill
- 二维图形的几何变换
- UVa12696 - Cabin Baggage(水题)
- Linux USB驱动工作流程