博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows phone 2048 源代码奉上
阅读量:6267 次
发布时间:2019-06-22

本文共 962 字,大约阅读时间需要 3 分钟。

小梦今天把2048的游戏源代码给大家分享一下,其实感觉这个重在算法,UI很简单,而且几乎没有用到什么windows phone的API。小梦遇到最主要的问题就是对触摸事件的处理,我刚开始想到的就是 Manipulation的系列事件,不过在测试的时候不知道为什么我设置的ManipulationDelta,ManipulationStart,ManipulationCompleted 竟然都全无反应,我还以为WP8.1不支持了,于是把所有的触摸事件试了个遍,到最后发现当把ManipulationMode设置为”All”的时候,终于有了反应,(当然,这个不一定要是ALL,设置为你支持的触摸事件就可以,比如平移,旋转。)想问一下:是不是必须要设置ManipulationMode然后Manipulation才有反应呢?  我测试的结果是必须要有。于是我便用了ManipulationStart和ManipulationCompleted和获取触摸开始和结束的坐标,不过当完成后,发现游戏虽然正常运行,但是反应超级慢,明显延迟1秒左右。我开始以为是算法有问题,太费时间了,于是看了好多其他人公开的算法,发现复杂度都差不多。最后想到了在触摸事件的引发顺序中,ManipulationCompleted时间比较靠后,或许是这个原因。于是便想用ManipulationDelta事件试下,看看反应会不会快点,结果反应的确快了,只不过一次触摸会触发多次。解决方法是在使用它的Complete()方法,这个方法师完成触摸而不引发惯性时间。

还有一个小问题就是布局生成16个小方格时候,我采用的是在Grid里放置Button来实现。就是大家要注意button按钮本身有默认属性是有Margin,Padding,borad,以及状态属性和各个状态之间的转移动画,要想实现2048中的方格效果,我们应该删除或者修改这些属性。还有Grid也有默认的Margin属性,我们也得改掉。

至于2048的完整实现过程,改天再写吧。

欢迎大家吐槽和建议,源码还有许多改进的地方,小梦还会在修改的。

源码献上:   (大家只要注册一下就可以了,没有其他限制。)

转载于:https://www.cnblogs.com/bcmeng/p/3870590.html

你可能感兴趣的文章
Mysql优化策略
查看>>
python基础知识踩点
查看>>
3月5日云栖精选夜读 | 2019阿里云开年Hi购季新用户分会场全攻略!
查看>>
IJCAI阿里论文 | JUMP: 一种点击和停留时长的协同预估器
查看>>
腾讯十年投资记
查看>>
搭建直播平台需要从CDN“内部”入手
查看>>
python实现堆栈数据结构及其基本方法
查看>>
制造业瓶颈如何突破?“智变与突破——制造业人工智能产业峰会·南京”来献策...
查看>>
Linux shell 遍历
查看>>
MySQL ERROR 1372 (HY000): Password hash should be a 41-digit hexadecimal number
查看>>
如何设计一个高可用的运营系统
查看>>
SQL数据库学习之路(一)
查看>>
Prometheus监控实践:Kubernetes集群监控
查看>>
创建表格存储(Table Store)结果表
查看>>
网站301跳转
查看>>
Android 权限管理
查看>>
Django配置MySQL数据库及采坑记
查看>>
关于DialogFragment全屏方案
查看>>
WPF中查看PDF文件
查看>>
旷视科技 CSG 算法负责人姚聪:深度学习时代的文字检测与识别技术 | AI 研习社 103 期大讲堂...
查看>>