位置: 编程技术 - 正文

Cocos2dx3.2编写常用UI组件(五)带滚动的表格GridView(cocos2djs)

编辑:rootadmin

推荐整理分享Cocos2dx3.2编写常用UI组件(五)带滚动的表格GridView(cocos2djs),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos用什么写代码,cocos用什么写代码,cocos2djs,cocos用什么写代码,cocos2d schedule,cocos用什么写代码,cocos2d schedule,cocos2djs,内容如对您有帮助,希望把文章链接给更多的朋友!

前言:

按照惯例先发上效果图:

正文:

先来吐槽几句,一说起滚动效果大家可能会联想到Cocos2dx给我们提供的ScrollView。我一开始也是打算用ScrollView来实现的,但是用着用着发现出现了各种莫名其妙的错误,所以只好自己重新写一个Node,通过onTouchBegan和onTouhMoved两个事件回调来实现滚动的效果。

GridView使用说明:

1.利用GridView::create(int row,int column)来创建一个GridView,row和column分别指定行数和列数。注意这里的行数是指可见的行数

2.通过GridView::addItem(Node* node)来向GridView里面添加元素

GridView实现思路:

1.创建的时候指定行数和列数

2.GridView里面新建一个Node(visibleNode)用于保存所有的item(以后实现滚动的时候方便点)

3.通过addItem进GridView时,计算出item的位置(x,y)

4.接受触摸事件

5.计算触摸的偏移量,visibleNode移动相应的距离

6.一头一尾的触摸要稍作判断(即不能上方出现空白或全空白)

Cocos2dx3.2编写常用UI组件(五)带滚动的表格GridView(cocos2djs)

7.添加遮罩层

核心代码解析:

1、添加Item

2、触摸事件

3、滚动条

实现思路:1.滚动条的大小由可见行数决定:滚动条高度=可见行数*每个Item的高度

2.滚动Button的大小由当前最大行数和可见行数决定:滚动Button的大小=可见行/最大行 * 滚动条高度

3.滚动条的位置由GridView当前位置和GridView最大可以上升的位置、滚动Button大小和滚动条大小决定

可以这样理解:

GridView上升高度/最大可以上升高度 = Button下降高度/Button最大可以下降高度

其中,GridView的上升高度和最大上升高度可以直接获取,Button的最大下降高度= 滚动条大小-Button大小

因此,可以求出Button的下降高度。也就可以确定Button的位置

4、GridView主要用途

GridView可以用来做背包视图,或者一个简单的listView(需要设置列数为1)

最后,附上源码:注意要把那两个图片放到resource文件夹里面哦

点击打开链接

cocos2dx 读取json及解析 ball.json数据如下:[html]viewplaincopy{entities:[{entity:{TapOpposite:0,Interval:0.,BallNum:1}},{entity:{TapOpposite:0,Interval:0.,BallNum:2}},{entity:{TapOpposite:0,Interval:0.,BallNum:3}}

Sublime Text + decoda 调试Quick-cocos2d-x 游戏 小白一个,初学quick-cocos2d,初期使用cocos2dx开发游戏,后期使用quick-cocos2dx3.2。SublimeTextdecoda调试Quick-cocos2d-x游戏的方法。1.安装vs、SublimeText3、decoda

cocos2dx 网络编程(CCHttpRequest和CURL两个方式) 转自:

标签: cocos2djs

本文链接地址:https://www.jiuchutong.com/biancheng/372744.html 转载请保留说明!

上一篇:cocos2dx3.3 便条提示语功能简单实现

下一篇:cocos2dx 读取json及解析(cocos2dx schedule)

  • 北京增值税发票打印边距设置
  • 认缴制的注册资本实缴时存哪里
  • 接受投资材料
  • 小规模纳税人发票怎么做账
  • 建筑企业预收款开具不征税发票为什么要预缴
  • 原材料作废品处理方法
  • 非居民工资薪金个人所得税计算方法
  • 企业哪些研发费用可以资本化?
  • 土地罚款可以计入成本吗?
  • 海关进口货物如何消杀
  • 年收入超过12万什么时候申报
  • 增值税 代销
  • 个人去税务局开劳务票 税点是多少
  • 烟酒发票可以抵扣所得税吗
  • 学校的纳税人识别号是不是社会信用代码
  • 退役士兵增值税优惠申报方法
  • 出口退税企业分类
  • 实收金额比应收金额多
  • 个人工程款税怎么开
  • 付了款没有收到发票
  • 建筑劳务预缴税款后怎么申报
  • 增值税专用发票的税率是多少啊
  • Google Bard VS ChatGPT:哪个是更好的AI聊天机器人?
  • 煤矿安全费用会议
  • 预付账款是企业销售过程中形成的一种非货币形式的债权
  • 有限公司注册资金多少好
  • linux minor
  • 电脑eb是什么意思
  • 从午夜穹顶看育空河,加拿大育空道森市 (© Robert Postma/Getty Images)
  • elementui rule
  • 事业单位长期应付款怎么核销
  • 机器学习中的数学原理——对数似然函数
  • 详解php实现页面跳转
  • 劳务所得和经营所得有啥区别
  • sscom命令
  • 银行同业存放业务管理办法
  • 微服务框架图
  • Uncaught SyntaxError: Unexpected token '<' (at 报错
  • 车辆转让后的责任谁承担
  • 低值易耗品需要计提吗
  • 纸质增值税专用发票申领
  • 培训发票税点
  • php 操作mongodb
  • 固定资产处置时的清理费用计入哪里
  • 快递费报销要明细吗
  • access分组计数
  • 兼职工资帐务处理
  • 企业汇算清缴中的职工薪酬指的是管理费用中的吗
  • 有限合伙企业分红原则
  • 房地产行业账务处理和主要税种
  • 会计中预付账款
  • 哪些发票不能开专票
  • 专票和普票的作用
  • 季度申报表弥补以前年度亏损
  • mysql中count(), group by, order by使用详解
  • Centos安装dig命令
  • 开启linux系统路由转发功能的语句
  • 如何安装win7系统教程
  • win10麦克风加强没有了
  • qvp32.exe - qvp32是什么进程 有什么作用
  • frontpage软件
  • linux编译安装php扩展
  • win7系统鼠标右键没有压缩文件功能
  • 你需要windows7sp1才能安装ie11
  • win8更新80072efe
  • JavaScript_ECMA5数组新特性详解
  • win8.1 下 eclipse+android 开发环境配置带图详细教程
  • Cocos2dx3.2 Crazy Tetris 基本设置及主菜单页面(菜单、按钮)
  • shell脚本如何注释
  • js 函数执行顺序
  • 置顶在哪里
  • Android Bound Service(二) ----- Using AIDL
  • css中背景图片设置
  • Node.js中的什么模块是用于处理文件和目录的
  • js控制display属性
  • node.js怎么用
  • js如何动态添加class
  • 税务局哪些部门轻松待遇好
  • 甘肃省契税征收标准
  • 茶叶出口退税率为什么是9%不是13%
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设