小弟我要做滚筒式的滑动特效,也就是说向左或者向右滑动的时候,一个精灵可以滑动到前一个精灵或者后一个精灵的位置,假设有五个精灵图片,按照1 2 2 的顺序排列成圆筒的样子层级一层比一层低,,并且除1显示为亮度,其他的显示问i暗色。小弟用精灵数组创建5个精灵按位置排序,设置好层级关系,那么我要如何向左或者向右滑动的时候一个个精灵都会跟着变化?这中逻辑实在难搞,清各位大大们就资料,求链接,求源码(最好有源码慢慢分析),小弟感激不尽。
每次滚动重新更新一遍图片的位置和层级 用moveTO做个过度动画就行
可以去找下flash 照片墙 或者 轮播 的源码照着AS代码做一下就行
flash有很多类展示效果的源码可以下
在init创建 char pngName;
char Tage;
int tage = 100;
//方框
for (int i =0;i<5;i++)
{
sprintf(pngName,"%d.png",i+1);
sprite*= CCSprite::create(pngName);
sprite*->setPosition(point*);
tage–;
if (i == 4)
{
tage+=1;
}
layer->addChild(sprite*,tage);
}
,滑动的时候向左for (int i = 0; i < 4; i++)
{
int number = i+1;
CCMoveTo actionl = CCMoveTo::create(0.2,point);
sprite->runAction(actionl);
}
CCMoveTo *actionl4 = CCMoveTo::create(0.2,point);
sprite->runAction(actionl4);
用CCmoveTo只能实现一次,如何循环法,并且他的层级关系怎么调整?我这样滑动的是改变位置,而层级关系在于精灵,这关系怎么理清呢?*****
简单的做就是
一个 图片数组
一个 位置数组
左转的时候 操作数组的删除末尾图片 添加到数组开头 右转就是反过来操作过来
剩下的代码不用变 刷新一次就可以
我用const CCPoint point = {ccp(WIN_W/2,WIN_H/2-50),
ccp(WIN_W/2-200,WIN_H/2),
ccp(WIN_W/2-100,WIN_H/2+50),
ccp(WIN_W/2+100,WIN_H/2+50),
ccp(WIN_W/2+200,WIN_H/2)
};建立一个位置数组,用CCSprite *sprite;创建图片数组,怎么在左转的时候,操作数组的删除末尾图片,添加到数组开头,右转就是反过来操作过来?