位置: 编程技术 - 正文

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)

  • 退税现金流量表做哪里
  • 应收账款的期末余额在借方表示什么意思
  • 小企业一定要买五险吗
  • 办税人员可以是其他公司人员吗
  • 商业汇票的存款期限
  • 营改增后建筑业
  • 冲销暂估入库
  • 国税实名认证一般是公司里谁去认证的
  • 小规模企业营业税
  • 农场管委会是什么性质单位
  • 不需要抵扣的怎么直接进费用
  • 2020深圳增值税税率是多少
  • 雇主责任险会计分录
  • 个税按月算和按年算为什么不一样
  • 小规模30万免税政策
  • 员工报销费用
  • 固定资产合并抵扣增值税
  • 外汇风险怎么规避
  • 印花税减免税额需要做账吗
  • 清产核资的步骤
  • 收到租金税率
  • bootmgr is missing怎么手动解决
  • Win10家庭版安装教程
  • 备用金冲销会计怎么做账
  • 个人所得税如何办理退税
  • linux怎么查看防火墙信息
  • linux 数据类型
  • PHP:php_check_syntax()的用法_misc函数
  • 高薪技术企业研发项目合同范本最新
  • scworker.exe是病毒
  • 建房转让协议书
  • phpstudy8
  • 私企股权转让程序
  • thinkphp框架搭建
  • mysql刷新数据
  • thinkphp登录验证
  • h5与小程序交互
  • 基于深度学习的车型识别系统(Python+清新界面+数据集)
  • python标准库在哪个目录
  • js中数组方法有哪些
  • 怎么修改手机的地理位置
  • js必学知识点
  • 电子商业汇票业务
  • 农民专业合作社法
  • 预收款预缴增值税如何核算的
  • 房地产开发企业的了解概述
  • 工会经费发放奖励个税处理
  • 无形资产摊销是什么会计科目
  • 公司收取保证金合法吗
  • 可供出售金融资产现在叫什么
  • 银行汇票的会计处理过程分为什么阶段
  • 政府资助专项资金是什么
  • 契税应该计入税金及附加吗
  • 汇算清缴预缴
  • 机物料消耗计入什么费用
  • 企业工会经费计提比例
  • 未使用的固定资产计提折旧计入什么科目
  • 经营性应收项目和经营性应付项目
  • window10总更新是怎么回事
  • wmpdmc.exe是什么意思
  • ubuntu14.04下apt-get install的报错以及解决方法
  • Ubuntu上安装anaconda
  • 抢先体验的游戏可以退款吗
  • Linux运维工程师工作内容
  • 局域网扫描器
  • bootstrap表单模板
  • incaseformat查杀
  • vue全家桶包含哪些
  • nodejs怎么实现多线程
  • unity 游戏
  • CentOS下mysql定时备份Shell脚本分享
  • python截屏幕的图
  • jquery.cookie.js实现用户登录保存密码功能的方法
  • 增值税发票打印机怎么连接电脑
  • 怎么查询高速路封闭和开通
  • 贤彬考研,刘磊?
  • 新旧动能转换是我们能否过坎的关键
  • 内蒙古国地税联合办税服务厅
  • 企业税收筹划的基本目标
  • 环保职责及管理范围
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设