想知道cocos2d-js的层在切换时有动画吗?

cocos2d-js里边的场景切换的时候,有很多自带的动画。
但我想知道层切换的时候怎样添加动画?
现在在做一个小页面,就是希望左右滑动的时候场景中的layer可以跟着左右滑动,但是苦于不知道怎样实现layer的动画。
因为这个小页面有一个主背景跟一些向左向右的箭头是一直不变的,所有放在同一个场景中。而其他要变的东西,都放到一个层里了,不同页面就是一个个不同的层,通过切换层来实现页面的切换,但怎样可以添加一些过渡是的效果,比如左右滑的时候层也跟着左右滑然后才消失,而不是直接消失。

粗略画一些结构:

|____MainSence //主场景(包含一张背景图和两个滑动按钮)
|____BackgroundLayer //次背景层(包含两张背景图,暂时称作background和frontground)
|____ContentLayer ] //Layer数组(每一个Layer是要切换的页面的所有内容)
|_____Layer1
|_____Layer2
|_____Layer3
|_____Layer4
|_____Layer5 //( ContentLayer里的Layer1~5和BackgroundLayer就是左右滑动时要切换的内容,但切换的时候ContentLayer的内容是淡入淡出出现的,而BackgroundLayer是从左边或从右边滑入的效果,这样要怎么实现)

1、新建一个Layer 取名 scrollLayer, addChild所有可以移动的层到scrollLayer上。
2、设置所有可以动层x轴上的的偏移量,第n个层的偏移量 = 屏幕宽 * (n-1)
3、检测触摸事件的x偏移,偏移多少就移动 scrollLayer 多少。
4、根据 scrollLayer 的 x 坐标就可以知道各个子层在屏幕上的位置,根据位置设置每个层的 alpha 值,实现是淡入淡出效果。

那scrollLayer偏移的时候是用cc.moveTo()吗?但这个动作不是Sence才能用的吗?Layer也能吗?

scrollLayer的锚点设置了(0,0)
position也是设置(0,0)
还有好像是用moveBy,而不是moveTo

触摸事件这样写对吗?
onTouchEnded: function (touch, event) {
var size = cc.director.getWinSize();
var delta = touch.getLocation().x - this.startPosX;
if (delta > 30 && self.currentIndex > 0) { //currentIndex是当前页,用于检测是否滑动到头尾两端了
this.scrollLayer.runAction(cc.moveBy(0.5, size.width, 0));
} else if (delta < -30 && self.currentIndex < self.sceneList.length - 1) { //sceneList.length是所有页面总数
this.scrollLayer.runAction(cc.moveBy(0.5, -size.width, 0));
}
}

移动不一定要用action啊,直接改x,y的值就可以。

runAction各种

但我this.scrollLayer.runAction(cc.moveBy(0.5, -size.width, 0));没效果,页面直接load不了,请问是什么问题?

直接改x,y的值没过渡效果,layer一下子就全出来了,但我想实现过渡效果(不是淡入淡出的效果,是从左边滑入或者从右边滑入的过渡效果,我知道淡入淡出可以用cc.setOpacity(),来控制,但滑入效果我用cc.moveIn()、cc.moveBy()都不行,而且cc.slideIn()也不行)

是要pageview的效果吧

ccui.PageView()

这个是什么方法?官方文档里面有吗?怎么找不到的,在哪里啊?

UIPageView.js中的插件

应该属于扩展包的内容吧

中文官网上的js api好像是不包括扩展包的

所以搜不到吧