位置: 编程技术 - 正文

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能做游戏吗)

  • 公司车船使用税会计分录
  • 出口退税申报的发票无电子信息是什么意思
  • 股权转让所得如何申报个税
  • 无金额的合同印章有效吗
  • 出资款在现金流中怎么体现
  • 出差补贴需要交税
  • 上一年的收入少做账了该怎么调
  • 农副产品收购发票税率是多少
  • 小企业外币交易
  • 托管物资账务处理流程
  • 当年实现的利润弥补亏损会计分录
  • 生产企业出口退税的会计分录
  • 缴纳了土地增值税怎么退
  • 进项税额转出是什么意思大白话
  • 专用发票与普通发票代码区别
  • 个体户一个月开票30万怎么上税
  • 个人所得税免税收入怎么填纳税申报表
  • 个体户可以不领税控盘吗
  • 生产型企业进出口初申报流程
  • 商家收白条
  • ukey开票界面
  • word字体平滑
  • 资产负债表中资产项目的排列顺序是
  • 减免增值税计入什么科目
  • linux 管道命令详解
  • abm文件怎么打开
  • 计提坏账可以冲回吗
  • 盘盈的存货处理
  • 地下停车位是否符合国家安全标准咨询那个部门
  • 补缴的土地出让金需要计提吗
  • 命令行查看ip地址
  • 增值税专用发票怎么开
  • java本地缓存框架有哪些
  • 差旅费车票抵扣的相关规定
  • yii2实现根据时间搜索的方法
  • vue 播放视频流
  • 预付卡怎么开票
  • 实用的开源软件
  • 新星计划片头好可爱啊
  • php数据统计源码
  • 推荐几个比较好用的
  • 经费支出的定义
  • 机票退票手续费新规定2023
  • 织梦怎么调用当前栏目下的文章
  • 购货方开工具红包怎么开
  • 独立核算的分公司可以享受六税两费减半吗
  • 建筑工程租赁费属于什么费用
  • 可供出售金融资产名词解释
  • 税务师考试的报名时间
  • 资产处置收益项目有哪些
  • 小规模企业所得税怎么征收
  • 房地产增值税计入什么科目
  • 核销单取消后出口收汇流程
  • 发票上的折扣是什么意思
  • 不签订购销合同的后果
  • 个体工商户要进行汇算清缴吗
  • 固定资产没有发票
  • 企业计提增值税怎么写
  • 办土地证费用会退吗
  • sql根据逗号分割数据
  • 拒绝访问.exe出错
  • macbook怎么开hdr
  • win10动态磁贴不更新
  • centos7 中文支持
  • 怎么在ubuntu上编程
  • Win10怎么修改hosts文件
  • windows7版本支持功能最少的
  • Win10怎么更换主题
  • win10本地连接怎么改名称
  • linux curl命令使用
  • linux block io
  • cmd更改文件属性
  • js setTimeout opener的用法示例详解
  • vue导航组件
  • 怎么实现移动
  • python djang
  • 支付给境外的咨询费需要什么资料
  • 重庆市国家税务局电子税务局官网
  • 如何申报印花税的流程
  • 纳税人识别号和公司税号一样吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设