位置: 编程技术 - 正文

Cocos2d : 模拟IOS时间选择器(循环)(cocos2dx 2.2.2)

编辑:rootadmin

推荐整理分享Cocos2d : 模拟IOS时间选择器(循环)(cocos2dx 2.2.2),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2d手机版,cocos moba,cocos2d iphone,cocos moba,cocos moba,cocos模拟器,cocos simulator,cocos2d iphone,内容如对您有帮助,希望把文章链接给更多的朋友!

使用引擎:cocos2d-js 3.0

使用语言:javascript

运行平台:手机web

---------------------------------------------------------------

初步分析:

操作过程:

滑动,转动,放缓速度,平衡,停止。

时间选择器的功能分析:

1. 滑动

2. N个选项结果(eg. 0~)

3. 部分数字可见

4. 根据最近原则,自动平衡到结果item

5. ...

--------------------------------------------------------------------

作为一名合&#;的Cocos2d程序员,脑袋第一反应至少应该是:ScrollView、ClippingNode。

于是我们立刻面临两种选择,一种是继承ScrollView的做法,或者是使用ClippingNode自己造轮子。

首先不说ScrollView有多么繁杂的私有变量,最不利的是,它的整个滑动逻辑和时间选择器是不同的,它是有尽头的。因此,我们如果选择继承的做法,那么无疑工作量会比较多(修改ScrollView逻辑流程)。

其实循环滚动的逻辑一点也不复杂,我们没必要去使用任何已有的滑动类控件,无论是扩展性还是运行效率,这个轮子自己造才是最好的选择。

那么我们使用ClippingNode?

Cocos2d : 模拟IOS时间选择器(循环)(cocos2dx 2.2.2)

不是!而是使用ccui::Layout。最终我选择它的原因是,它不需要设置stencil,直接一句话即可设置成为裁剪(setClippingEnabled),减少子父节点坐标计算的复杂性。

--------

UI如下:

--------

--------

核心点:

--------

1. 鉴于效率和方便性,使用一个contentNode来管理所有item。

2. 通过_bMoveing和_bTouching标识来处理触摸和移动之间相互影响。

3. 循环滚动的实现逻辑:向上移动,那么最上的item会移动到最下,向下则反之。

4. 在操作结束之后,做矫正平衡(准确移动到固定的位置)。

--------

代码实现:

--------

----------------------------------

由于设置了每秒滑动距离的限制,因此代码在手机web平台几乎没有效率问题。

在Native平台可以放宽一点,让滑动更爽快~

最后,由于小弟知识水平有限,代码中有各种不规范的地方望各位大神们多多包含。

可在 html5 游戏中使用的 js 工具库 可在html5游戏中使用的js工具库作者:木頭时间:September,分类:Utilities,Game使用cocos2d-js3.0开发游戏项目两三个月,积累了几个有意思的工具库,在此做一

cocos2d-x window实现鼠标移动 键盘事件 用cocos2d开发windows游戏.需要处理按键消息,cocos2d源代码目录的CCEGLView.h类中提供了一个接口voidsetAccelerometerKeyHook(LPFN_ACCELEROMETER_KEYHOOKlpfnAccelerometerKeyHook);

在cocos2d-js实现自动绑定cocostudioUI控件与事件 一.起因在客户端游戏开发中最让人恶心的工作就是UI相关的东西,虽然有了像cocostudio这样的可视化工具,但界面中有大量需要由代码访问的控件的时候

标签: cocos2dx 2.2.2

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

上一篇:《Cocos2d学习之路》一,前序和闹钟(cocos2djs教程)

下一篇:可在 html5 游戏中使用的 js 工具库(html5能做游戏吗)

  • 增值税小规模纳税人申报表填表说明
  • 幼儿园财务科目设置
  • 办公用品普通发票的会计分录
  • 土地使用权契税入账会计分录
  • 其他收益在报表哪个位置
  • 纳税人识别号的组成
  • 小规模纳税人涉税风险
  • 签了合同没开票
  • 进口设备贴息政策2019
  • 驾校挂靠车辆账务处理?
  • 上年的应收帐款在本年度如何录入?
  • 培训费没有发票怎么办
  • 购货方跨月进项税额转出分录
  • 服务费不开发票可以做无票收入吗?
  • 建造合同中甲供材选择一般计税还是简易计税更省税?
  • 设立独立核算的销售机构
  • 折扣折让的账务处理
  • 筹建期可以有收入吗
  • 开票需要对方提供营业执照吗
  • 跨年销项税红字发票会计处理?
  • 新公司开办费用包括哪些
  • 怎么进入bios设置界面设置内存
  • php数组函数输出《咏雪》里有多少"片"字
  • chat gpt介绍开头
  • 高新技术企业的申报条件包括以下哪些
  • 同一控制下企业合并发生的审计费用计入
  • 固定资产清理如何计算增值税
  • 处理固定资产怎么交税
  • php事务特性
  • 计提的增值税可以扣除吗
  • php设计模式及使用场景
  • uniapp官方教程
  • vue3.0项目创建
  • 公司借款给个人怎么写借条
  • 毕业设计教程
  • 微信多开使用方法
  • 应收账款未计提怎么处理
  • 长期借款的主要缺点
  • 增值税附加税有哪几种
  • sql2014附加数据库失败
  • 酒店营业税率是多少
  • sql server干嘛的
  • SQLServer2005与SQLServer2008数据库同步图文教程
  • sqlserver数据库安装步骤
  • 将MySQL help contents的内容有层次的输出方法推荐
  • sql server存储过程写法
  • 季节性生产企业有哪些
  • 2019员工旅游费最新规定
  • 现金折扣要扣除折扣金额入账吗
  • 去年购进的货物怎么做账
  • 年度汇算清缴后补税,账务要调整吗
  • 员工出差报销的餐费怎么下账
  • 收到赞助费怎么回复客户
  • 小微企业免税额度是多少
  • 管理费用抵扣企业所得税的比例
  • 发票额开多了多出的金额怎么处理?
  • 本月多交的增值税
  • where条件加判断
  • sql server触发器的编写与使用
  • 谁编写了元素周期表
  • Vista 优化预读文件设置,提速开关机速度
  • 服务器找不到存储盘
  • userint32.exe - userint32是什么进程
  • 交换机操作系统版本
  • 苹果Mac系统怎么切换输入法
  • 怎么制作xp系统
  • 在linux操作系统中,/etc/rc.d/init.d
  • 两种方法教你锁门
  • win7突然变卡顿怎么回事
  • win8如何使用
  • layui nodejs
  • msoobe命令
  • bootstrap要学吗
  • ubuntu sudo apt-get install
  • jquery 属性
  • python的特点及应用范围
  • CloudEditText
  • unity中物体移动代码
  • 内蒙古国地税联合办税服务厅
  • 公共基础设施项目所得税优惠目录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设