位置: 编程技术 - 正文

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

  • 视同销售行为的涉税处理?
  • 车船使用税怎么网上缴费
  • 一般纳税人金税盘抵税会计分录
  • 所得税的账务处理流程
  • 营业成本在资产负债表哪里
  • 打包材料的费用会计分录
  • 财务报表季报申报报表要分开申报吗
  • 公允价值变动损益和投资收益区别
  • 出差租车费用报销标准
  • 应交消费税通过什么科目核算
  • 印花税没有计提直接付了怎么做账
  • 资本化支出加计摊销形成的差异
  • 养老保险缴纳比例是固定的吗
  • 开办费一次性摊销企业所得税
  • 购买投资理财产品放的会计处理怎么做?
  • 企业购销业务流程包括哪些
  • 补提上个月折旧会计分录
  • 金融企业贷款利率
  • 企业的财产清查无论什么情况,均应先通过
  • 不抵扣发票如何勾选
  • 2020年运费发票备注栏新规定
  • 公司经营权补偿款会计处理?
  • 产品入库的业务流程
  • 银行承兑汇票质押率90%
  • 红字增值税专用发票是什么
  • Win10版本21H2卡死
  • amr文件怎么转换为mp3
  • el-tree方法
  • linux多网卡聚合
  • 持有至到期投资减值准备
  • 员工重复报销后如何处理
  • 出口免税和退税交附加税
  • 未开票收入申报对企业有什么影响
  • AI工具大全
  • 城市公交网
  • framework在哪里打开
  • vue获取当前行
  • vue修饰词
  • 固定资产没有价值怎么入账
  • 增值税发票可以重开吗
  • mysql内连接查询使用汉语作为官方语言的所有国家
  • 增值税专用发票几个点
  • 网上如何增加办税人员
  • 管理人员工资结构图
  • 房屋扩建后折旧费怎么算
  • 税控盘的作用是什么
  • 开具免税的发票,"税率"栏该如何填开?
  • mysql语句语法
  • 付承包费计入什么科目
  • 企业现金购货限额
  • 废料进口报关
  • 暂估应付账款的科目编码
  • 资金结余率怎么算
  • 工程怎么做会计分录
  • 洗浴发票可以报销么
  • 残保减免金政策
  • 报销没有消费凭据怎么办
  • 接受慈善捐款结尾怎么写
  • 关联方交易舞弊手段
  • 本年利润怎么结账
  • 利用pt-heartbeat监控MySQL的复制延迟详解
  • 在sql查询中使用where子句指定的是
  • windows xp密码忘记怎样解锁
  • win7玩游戏全屏
  • scrollpane.setviewportview
  • 一个简单的灵魂福楼拜
  • node.js报错998
  • 初识年岁尚温柔 小说 免费
  • python字符串常用方法
  • python中的字典与列表属于什么类型
  • unity3d打包成apk
  • 技术总结结束语
  • excel执行python脚本
  • 长途客运手撕票能不能报销
  • 电子签章在电脑上怎样加印章
  • 国考什么时候开始备考比较好
  • 施工企业建筑机械管理机构主要职责是负责建筑机械的
  • 两个手机怎么设置
  • 教师资格证认定流程
  • 车辆购置税怎么做账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设