cocos2d js scrollView
来源:互联网 发布:重庆时时彩遗漏数据 编辑:程序博客网 时间:2024/06/16 13:36
var scrollView = new ccui.ScrollView(); //设置方向 scrollView.setDirection(ccui.ScrollView.DIR_VERTICAL); //触摸的属性 scrollView.setTouchEnabled(true); //弹回的属性 // scrollView.setBounceEnabled(true); //滑动的惯性 scrollView.setInertiaScrollEnabled(true); scrollView.setBackGroundImageScale9Enabled(true); //设置背景 scrollView.setBackGroundImage(res.Bghong_jpg); //设置scrollview的大小,相当于是显示的区域 scrollView.setContentSize(cc.size(640, 1140)); //设置容器的大小 这个容器就是存放scrollview添加的节点,需要设置他的位置,上面已经讲清楚 scrollView.setInnerContainerSize(cc.size( 640,6840)); //可以添加触摸事件监听器 scrollView.addTouchEventListener(this.scrollviewCall,this) //锚点默认是 (0,0) scrollView.setAnchorPoint(0,0) scrollView.x = 0 scrollView.y = 0 //自己新建一个节点 this._Node.addChild(scrollView); //layer的锚点默认是(0,0),现在设置ImageView var imageBg = new ccui.ImageView(res.liuheyi_jpg); imageBg.setAnchorPoint(0,0); imageBg.setPosition(0,0); scrollView.addChild(imageBg,1); //添加按钮层 var buttonlayer = new ButtonLayer(); buttonlayer.setPosition(0,0); buttonlayer.setContentSize(cc.size(600,6840)) scrollView.addChild(buttonlayer,3)
游戏中很多需要用到ScrollView的情况,也就是需要滚动一片区域。这里有两种实现方法,一种是使用cocos studio的方式,第二种是手写代码。先看第一种
第一种记得在设置滚动区域时选取裁剪项。
- var size = cc.winSize;
- //读取json文件
- var root = ccs.uiReader.widgetFromJsonFile(res.listJson);
- this.addChild(root);
- //获取在cocos studio里面设定好的scrollView
- var missionlist = ccui.helper.seekWidgetByName(root, "MissionList");
- //设定垂直朝向滚动
- missionlist.setDirection(ccui.ScrollView.DIR_VERTICAL);
- missionlist.setTouchEnabled(true);
- missionlist.setBounceEnabled(true);
- missionlist.setVisible(true);
- //设置大小
- missionlist.setSize(cc.size(960, 400));
- //设置可以滚动区域
- var len = 9;
- missionlist.setInnerContainerSize(cc.size(960, 80* len));
- missionlist.y = size.height/2;
- missionlist.x = size.width/2;
- missionlist.setAnchorPoint(cc.p(0.5,0.5));
- //设置滚动的项目
- for(var i = 0; i < len; i++){
- var sprite = new cc.Sprite(res.item_png);
- missionlist.addChild(sprite);
- sprite.x = missionlist.width/2;
- sprite.y = missionlist.getInnerContainerSize().height + 40 - (i+1)*80;
- sprite.setAnchorPoint(cc.p(0.5,0.5));
- }
- missionlist.jumpToTop();
- 第二种,手写代码
- var listView = ccui.ScrollView.create();
- listView.setDirection(ccui.ScrollView.DIR_VERTICAL);
- listView.setTouchEnabled(true);
- listView.setBounceEnabled(true);
- listView.setSize(cc.size(960, 400));
- listView.x = size.width/2;
- listView.y = size.height/2;
- listView.setAnchorPoint(cc.p(0.5,0.5));
- this.addChild(listView);
- istView.setInnerContainerSize(cc.size(960, 80*9));
- for(var i =0; i < 9; i++){
- var sprite = new cc.Sprite(res.item_png);
- listView.addChild(sprite);
- sprite.x= listView.width/2;
- sprite.y= listView.getInnerContainerSize().height + 40 - (i+1)*80;
- sprite.setAnchorPoint(cc.p(0.5,0.5));
- }
- listView.jumpToTop();
- 下面是左右滑动的代码示例
- var HelloWorldLayer = cc.Layer.extend({
- sprite:null,
- ctor:function () {
- this._super();
- var size = cc.winSize;
- var listView = new ccui.ScrollView();
- listView.setDirection(ccui.ScrollView.DIR_HORIZONTAL);
- listView.setTouchEnabled(true);
- listView.setBounceEnabled(true);
- listView.setSize(cc.size(512, 200));
- listView.x = size.width/2;
- listView.y = size.height/2;
- listView.setAnchorPoint(cc.p(0.5,0.5));
- this.addChild(listView);
- listView.setInnerContainerSize(cc.size(128*6, 200));
- for(var i =0; i < 6; i++){
- <span style="white-space:pre"> </span>var sprite = new cc.Sprite(res.item_png);
- <span style="white-space:pre"> </span>listView.addChild(sprite);
- <span style="white-space:pre"> </span>
- <span style="white-space:pre"> </span>sprite.x= i*130 + 40;
- <span style="white-space:pre"> </span>sprite.y= listView.getInnerContainerSize().height/2;
- <span style="white-space:pre"> </span>sprite.setAnchorPoint(cc.p(0.5,0.5));
- }
- listView.jumpToLeft();
- cc.log("ben guo...");
- return true;
- }
- });
- var HelloWorldScene = cc.Scene.extend({
- onEnter:function () {
- this._super();
- var layer = new HelloWorldLayer();
- this.addChild(layer);
- }
- });
0 0
- cocos2d-js ScrollView,ccui.ScrollView
- cocos2d js scrollView
- cocos2d-js scrollview 例子
- cocos2d-x JS(ScrollView)
- cocos2d js ScrollView的用法
- cocos2d-js 中scrollview详解
- 完整cocos2d实现scrollView
- Cocos2d-x关于ScrollView
- 14 cocos2d ScrollView
- cocos2d-x3.0 ScrollView
- cocos2d-x ScrollView、TableView
- 关于cocos2d::extension::ScrollView
- cocos2d-x3.2 scrollView
- Cocos2d-x ScrollView使用
- Cocos2d-JS中使用CocosStudio资源——ListView和ScrollView
- cocos2d-js 中ccui.ListView继承 ccui.ScrollView 但 addEventListenerScrollView 函数无法调用
- cocos2d-x ScrollView(上)
- cocos2d-x scrollView 滚动窗口
- 删除重复数据,建立唯一性索引
- 在CentOS6.8下rpm方式安装MySQL5.7
- Mybatis[4]
- 语句被终止。完成执行语句前已用完最大递归 100
- pyautogui--现货行情软件打开,自动下单函数
- cocos2d js scrollView
- 微信Tinker热修复集成
- springmvc校验注解
- Android自定义控件几个重要步骤
- 为什么不使用默认的980px的布局Viewport
- BZOJ 1492 [NOI2007 D1T2] 货币兑换Cash
- 关于低版本design:23.0.0 会出现滑动的时候出现getX()出现为null问题
- 基于DragonBoard 410c的遥控炮台三之远程交互(上)
- mysqldump数据备份