首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开发 | 「小游戏」开发难?不妨先从 2048 入手试试看

作者:windlany 最近流行微信「跳一跳」小游戏,我也心血来潮写了一个微信小程序版 2048,本篇文章主要分享实现 2048 的算法以及注意的点,一起来学习吧! ? ?...算法 生成 4*4 棋盘视图 随机生成 2 或 4 填充两个单元格 记录用户 touch 时的起始位置和结束位置,以此判断滑动方向 根据滑动方向移动单元格,并进行相同值合并 用户一次滑动完成后重复执行步骤...2 判断游戏是否结束,并根据游戏结果产生不同提示 难点 确定滑动方向 用户滑动时,相同格子合并,并移到滑动方向一侧 视图实现 1....用 WXML + WXSS 生成棋盘视图 ? 2. 用 wx:for 将数据渲染到每个单元格 逻辑实现 1. 页面加载完毕随机用数字 2 或 4 填充两个单元格 2....根据滑动方向(假设向右滑动)移动表格以及相同项合并 将 2048 的棋盘生成 4*4 的二维数组 list,为空的空格用 0 表示 var grid = [ [2, 2, 0, 0],

38740

微信小程序版2048小游戏(附源码)

最近流行微信“跳一跳”小游戏,我也心血来潮写了一个微信小程序版2048,本篇文章主要分享实现2048的算法以及注意的点,一起来学习吧!...(源码地址见文章末尾) 算法 生成4*4棋盘视图 随机生成2或4填充两个单元格 记录用户touch时的起始位置和结束位置,以此判断滑动方向 根据滑动方向移动单元格,并进行相同值合并 用户一次滑动完成后重复执行步骤...2 判断游戏是否结束,并根据游戏结果产生不同提示 难点 确定滑动方向 用户滑动时相同格子合并,并移到滑动方向一侧 实现 视图实现 1、用wxml+wxss生成棋盘视图 012410.jpg 2、用wx:...2 : 0); 3、根据滑动方向(假设向右滑动)移动表格以及相同项合并 将2048的棋盘生成4*4的二维数组list,为空的空格用0表示 // 比如棋盘数据如下 var grid = [ [2,...] ]; 相应代码(代码中this.board.grid为上面的初始grid): formList(dir) { // 根据传入的滑动方向生成list的四个数组 var list = [[]

7.5K81
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Excel,大多数人只会使用1%的功能

    可以先在所有工作表里输入一个错误公式,再利用兼容性视图检查,将检查结果生成一张新工作表,里面带有所有工作表的名称链接,稍微修改就是表格目录了。...Office 2013中,兼容性视图检查功能藏于"文件" -> 信息 -> 检查工作簿 -> 检查问题 -> 检查兼容性中。 3....两层的下拉选择项 在一个单元格内下拉选择省份,在另外一个单元格里再选择这个省的城市,实现起来并不容易,除了用到数据验证,还要用到表格区域命名,外加一个INDIRECT()函数,挺有难度的一个任务。...批量修正一些不规范的数字 从基层采集上来的表格中经常会遇到一些不规范的数字,这些数字的前后会藏着空格,甚至是用文本格式保存的,Excel在单元格的左上角显示一个小黑三角,用来提示这种可能的错误。...恼人的空行 一些表格中每两行之间都有一个空行,如果用排序,可以将空行排在一起,但会打乱行的顺序,最好的办法是用“删除重复项”的功能。 8.

    2.2K20

    Ios常用第三方框架(二)

    HorizontalScrollCell - HorizontalScrollCell是一款使用方便的水平方向可滚动的单元格,适用于UICollectionView中实现水片方向滚动视图。 。...LxTabBarController - 改变了原生tabbar切换tab时的生硬效果,并加入滑动切换手势(有和界面上的其它手势发生冲突的风险,可根据具体项目予以关闭),swift版本。...ExpandingStackCells - 采用 UIStackView 实现表格单元格扩展内容显示示例及解决方案。...Sapporo - swift 单元格模型驱动的集合视图管理器组件。又一个超实用的“轮子”。...MGSwipeTableCell - 另一个常见于很多应用中的UI组件,苹果应该考虑在标准的iOS SDK中加入一些类似的内容。Swipeable表格cell是这个pod的最佳描述,也是最好的。

    7.7K60

    iOS 9 Storyboard 教程(二上)介绍Segue静态单元格(static cell)

    静态单元格(static cell) 当你完成这个部分的时候,Add Player控制器看上去和下图差不多: 这是一个分组的table view,但是你不需要为这个表格创建一个数据源.你可以在storyboard...之后,Xcode将添加这个属性到PlayersDetailViewController类里而且会和storyboard相连: 在表的单元格里创建视图的连线正是我所说的你不应尝试用原型单元格,而用静态单元格是可以的....每一个静态单元格都只有一个实例,所以它完全是可以接受的在视图控制器里通过连线连接它们的子视图....,并且在正常工作状态会显示这个静态单元格–那就是为什么你的静态内容没有变量.是时候来解决它了!...,基本的单元格也可以在一个内置tableView的视图控制器里起作用. ---- Note: 如果你创建了一个有很多静态单元格的控制器–很多都适合可见的frame–然后你可以用鼠标或触摸板滑动手势(2指点击

    3.3K10

    Excel 常用的九十九个技巧 Office 自学教程快速掌握办公技巧

    4、快速隐藏列表格内容太多需要隐藏工作表中某一列的数据时可直接选取列,快速向左拖动,选中的列就隐藏了。...18、隐藏表格内公式选取公式所在单元格区域,单击鼠标右键菜单中【设置单元格格式】在弹出的对话框中选择【保护】选项卡,勾选【隐藏】选项。然后点击菜单栏中的【审阅】-【保护工作表】即可。...34、同时查看两个工作表点击菜单栏中的【视图】-【并排比较】在并排窗口的对话框中选择需要比较的工作表点击【确定】。...44、求平均值需要求表格内数据的平均值时,在需要求平均值的单元格内输入:=AVERAGE,双击函数后拉取表格区域,再按下回车键就能快速得出区域内数值的平均值。...48、快速冻结第一行及第一列选中表格内的 B2 单元格,点击菜单栏中的【视图】-【冻结至第 1 行 A 列】就完成了。

    7.2K21

    问题——持续更新

    通过指针调用函数: 指针名 = &函数名 (这是给函数指针赋值)  拷贝、加括号、换名、加星号 __block关键字  在block中要使用零时变量 block传值  反向传值 适配中分页控件和滚动视图相结合...:在程序中怎么去实现 应用图标怎么添加 插件:  空工程 一些方法为什么总是调用不到,如创建在视图控制器中创建单元格???   ...解决:没有设置代理,方法无法调用 继承自UITableViewController的视图控制器要想自定义单元格要删除系统中的分区代码。 非自定义单元格为什么无法设置黑夜模式??...在表格协议的方法中  return  2  和return  _apps.count 结果不同(表现在单元格的高度上)???...为什么在xib中拖拽imageView的时候,总是会跑出去?     修改数据库中的数据有问题,无法修改?     怎么传递相册中的图片?

    1.3K20

    工作中必会的57个Excel小技巧

    选取要隐藏的工作表 -视图 -隐藏 5、让标题行始终显示在最上面 视图 -冻结窗格 -冻结首行 6、把窗口拆分成上下两部分,都可以上下翻看 选取要拆分的位置 -视图 -拆分 7、调整excel工作表显示比例.....”勾选 2、隐藏单元格内所有值 ctrl+1打开单元格设置窗口 -数字 -自定义 -右边文框中输入三个分号;;; 3、隐藏编辑栏、灰色表格线、列标和行号 视图 -显示 -去掉各项的勾选 四、单元格选取...1 、选取当前表格 按ctrl+a全选当前数据区域 2 、选取表格中的值/公式 按ctrl+g打开定位窗口 -定位条件 -值/公式 3 、查找值 按ctrl+f打开查找窗口,输入查找的值 -查找 4、...选取最下/最右边的非空单元格 按ctrl +向下/向右箭头 5、快速选取指定大小的区域 在左上的名称栏中输入单元格地址,如a1:a10000,然后按回车 五、单元格编辑 1、设置单元格按回车键光标跳转方向...整行选取复制 -粘贴后点粘贴选项中的“保留列宽” 4、输入到F列时,自动转到下一行的首列 选取A:F列,输入后按回车即可自动跳转 5、设置三栏表头 插入 -形状 -直线 -拖入文本框中输入的字体并把边框设置为无

    4.1K30

    DTCoreText的集成与使用目录一、相关资源二、DTCoreText的集成三、DTCoreText的使用四、可能遇到的错误五、参考链接

    Button,然后就可以很方便的处理响应事件了,其中: //url:Html中的超链接(可以根据需要设置http、tel、mailto等) //identifier:属于该视图的唯一性标识...DTAttributedTextView是支持滑动显示的富文本视图,在使用时计算富文本的Frame也就没那么必要了,一般我们都会指定它的Frame。其在这里的用法就不累述了。...@property (nonatomic, strong) NSArray *dataSource; //当前表视图是否在滑动 @property (nonatomic,assign)BOOL isScrolling...如果当前表视图在滑动就不执行刷新,因为滑动时候会自动调用表视图的刷新方法 - (void)reloadCurrentCell{ if (self.isScrolling) {...return; } //如果当前表视图没有在滑动,就手动刷新当前在屏幕显示的单元格 NSArray *indexPaths = [self.tableView indexPathsForVisibleRows

    4.9K90

    OneCode 低代码领域驱动设计(DDD)(三)深度解析视图建模-列表

    列表视图组成展示样例二,领域功能分解视图配置是本文主要讲解的部分,在列表配置中,主要由模块配置和子域配置两个部分组成。...模块配置​(2) 环境变量设置:在模块构建时通常是在特定环境下运行的,这些特性环境一般是由,聚合实体以及聚合跟的组件值配合当前用户等环境值对象来完成。...在列表视图中如果需要添加环境变量,只需要在视图类中添加。相应的 聚合KEY 并且在字段上添加@Pid,或者@Uid (参考下面具体示例),Uid 代表当前实体的组件值。...(1)视图子域概览视图子域​在实际应用中,列表通常是以独立的模块来呈现,但在用户在操作时会涉及到操作行甚至操作到表格应用。​...单元格应用更多的会涉及到表单的相关操作,会在后续表单章节中做近一步的介绍。单元格编辑单元格类型单元格事件​

    74461

    重磅分享-揭开Excel动态交互式图表神秘面纱

    永远不要低估Excel的作用,虽然名种BI工具很火爆,但记住他们只在分析师的群体中火爆,当涉及到报表分享时,分享到一般用户手里时,或者职场老一辈人群时,Excel是最佳的选择。...在之前的文章《Excel高阶图表,牛到不行了》中(Excel源文件下载,回复关键词“仪表盘”),我介绍了用切片器结合数据透视表更新事件的仪表盘制作方法,但从各位朋友的反馈中我觉得大家对两者还是有混淆,在文末会一并解释清楚...可以是普通的数据透视表,如果数据量级过大时,还可以将数据存储在SQL Server中,然后通过Powerpivot连接生成图表;至于控件的选择,需要结合具体的业务需求,通常来讲下拉框、列表框、数据有效性...数据有效性位于R27单元格中,通过R30=R27,将数据有效性单元格值传递给R30,R30将用于后续的vlookup查询取值。...在做数据透视时,数据源表中的数据行增加变动时,智能表会捕捉到这种变化,并按此调整数据透视表引用的数据源区域。

    8.4K20

    Java Swing JTable

    使用专门的渲染器和编辑器。 JTable仅使用整数来引用它显示的模型的行和列。 JTable只是采用表格形式的单元格范围,并在绘制过程中使用getValueAt(int,int)从模型中检索值。...因此,在编写TableModel时,不必侦听列重新排序事件,因为无论视图中发生什么,都将在其自身的坐标系中查询模型。...,并支持行内容的滚动(滚动行内容时,表头会始终在顶部显示)。...否则,在单元格上调用setValueAt将无效。 注意:该列是按表视图的显示顺序指定的,而不是按TableModel的列顺序指定的。...这是一个重要的区别,因为当用户重新排列表中的列时,视图中给定索引处的列将发生变化。同时,用户的操作永远不会影响模型的列顺序。 ?

    5.1K10

    「企业架构」Zachman框架简介

    设计器视图(系统逻辑)–此视图概述了系统将如何满足组织的信息需求。 实现者的观点(技术物理)–这是一个系统在解决生产约束时如何实现的表示。...在我们的案例中,框架的每一列都描述了分析目标企业中的一个独立变量。因此,任何一列的基本泛型模型都非常简单:它表示的变量(抽象)与自身相关。 规则3:每个单元模型专门处理其列的泛型模型。...因此,给定单元格的特定(元)模型将从通用的列模型开始,根据行的语义约束进行调整,然后可能进行扩展,以容纳所有相关概念,用于表示单元格行透视图的约束以及管理对单元格模型本身的更改。...禁止对角线的结构原因是因为细胞关系是传递的。在逻辑上更改单元格可能会影响同一列中的上下单元格以及同一行中的每个其他单元格。 规则6:不要更改行或列的名称。...在Zachman框架中开始的逻辑点应该在二维矩阵的左上角,然后沿着表格向下。用于表示特定业务领域的相关业务信息或模型可能已经存在于业务计划、项目计划、系统规范、程序指南或其他文档中。

    1.5K30

    最新iOS设计规范四|3大界面要素:视图(Views)

    用户经常会在滚动时使用非常大幅度的动作,如此便会非常难以避免在同一屏幕中对相邻的滚动视图进行交互操作。...一般而言,表格是基于文本的内容的理想选择,并且通常作为导航视图显示在拆分视图的一侧,而相关内容显示在另一侧。 表单分类 iOS有三种样式的列表,平级、分组、插入分组。 平级。...表单中的行 使用标准表格单元格样式来定义内容在表格行中的显示方式。 基础列表(默认):行的左侧显示图像,其后紧跟左对齐标题。对于不需要显示其他附加信息的项目来说,这是一种很好的选择。...显示不全的文字和词语很难被阅读和理解。超长的文本被截断在所有表格单元格样式中都是自动的,只是根据你使用的单元格样式和发生截断的位置,它可能会出现或多或少的问题。 可为“删除”按钮自定义标题。...然后,用户还会期待出现新的视图或者要改变的东西,例如已勾选按钮,是表示用户已经做出了选择。 为非标准表行设计自定义表格单元格样式。

    8.5K31

    iOS开发常用之网络

    Horizo​​ntalScrollCell - Horizo​​ntalScrollCell是一款使用方便的水平方向可滚动的单元格,适用于UICollectionView中实现水片方向滚动视图。...ExpandingStackCells - 采用UIStackView实现表格单元格扩展内容显示示例及解决方案。...DZNEmptyDataSet - DZNEmptyDataSet算是一个很标准的iOS内建方式,适合用来处理空的表格视图和集合视图。...MGSwipeTableCell - 另一个常见于很多应用中的UI组件,苹果应该考虑在标准的iOS SDK中加入一些类似的内容.Swipeable表格cell是这个pod的最佳描述,也是最好的。...仿LOL滚动视图 - 仿LOL滚动视图。 答案选择切换页 - 将scrollview和tableview封装在一起,在初始的时候简单的将数据带上,就可以一页一页的左右来回滑动。

    23.7K10

    《iOS Human Interface Guidelines》——Table View表视图

    表视图 表视图在一个由多行组成的滚动单列清单中显示数据。...在简单风格中,行可以被分到有标题的章节中,并且在视图的右边界可以显示一个可选的垂直索引。在章节的第一个条目之前可以显示页眉,在最后一个条目之后可以显示页脚。 分组风格。...在分组风格中,行是显示在分组中的,其可以有页眉和页脚。一个分组的表视图总是最少包含一个条目清单分组——每一行一个列表项——并且每个分组总是最少包含一个条目。分组表视图不包含索引。...在两种风格中,表行会在用户点击选中时简短地高亮。如果一行的选择导致导航到一个新的界面,选中的行会高亮并且伴随着新的界面滑动进来。...当你使用表视图时遵循下面的指南: 当用户选择列表条目时永远要提供反馈。用户期待当他们点击列表条目时表中的行能简短地高亮一下。

    2.4K20

    excel常用操作大全

    3.在EXCEL中输入“1-1”和“1-2”等格式后,将成为日期格式,如1月1日和1月2日。我该怎么办? 这是由EXCEL自动识别日期格式造成的。...“ctrl *”的特殊功能 一般来说,当处理工作表中有大量数据的表格时,可以通过选择表格,中的单元格格,然后按Ctrl+Shift *来选择整个表格。...单击“工具”菜单中的“选项”,选择“视图”,单击“格线,网”左侧的选择框,然后取消选择“格线网”将其删除; 2)打印过程中移除未定义的表格格线 有时,您编辑时未定义的表格格线(您在编辑窗口中看到的浅灰色表格格线...如果您需要在表格中输入一些特殊的数据系列,如物料序列号和日期系列,请不要逐个输入。为什么不让Excel自动填写它们呢?...之后,打印的表格看起来是一样的。 25.如果我忘记了工作表保护的密码怎么办?如果您想使用受保护的工作表并忘记密码,有什么办法吗?是的。

    19.3K10

    2022年最新Python大数据之Excel基础

    引用其他工作表数据 •在E1单元格中,输入”=“ 注意:只能针对单个单元格的引用 引用其他工作表数据 •点击另外一张数据表,在该表中找到要引用的数据,选中对应单元格即可。...在进行数据合并时,需要灵活使用逻辑连接符和文本转换函数: 在使用逻辑连接符和函数合并数据时,逻辑符与函数可以联合使用。 并且可能出现合并的数据文字表述不清晰,需要添加个别字词连接的情况。...表中不要有合并单元格 数据透视表的原始表格中不要有合并单元格存在,否则容易导致透视分析错误 填充合并单元格办法:取消合并单元格 ->选中要填充的空单元格 ->输入公式->按Ctrl+Enter键重复操作...创建数据透视表 •使用推荐的透视表 在原始数据表中,单击【插入】选项卡下【表格】组中的【推荐的数据透视表】按钮,即可出现一系列推荐的透视表 。...最终效果 分析不同业务员不同商品的销量 分析不同业务员,不同商品类别的销售额 添加数据透视图 添加透视图的方法:选中透视表区域的单元格,在【数据透视表分析】选项卡下【工具】组中选择【数据透视图】 数据透视图内容筛选

    8.2K20

    使用 SwiftUI 的 Eager Grids

    介绍 早在 2020 年,我们就拥有了在 SwiftUI(LazyVGrid 和 LazyHGrid)中绘制网格的新视图控件。两年后,我们又获得了另一种在网格(Grid)中显示视图的视图控件。...单元格视图仅在它们被滚动时创建,并且在它们滚动时停止计算。 这篇文章的主题 Eager Grids 正好相反。SwiftUI 不在乎它们是在屏幕上还是在屏幕外。所有视图都被同等对待。...归根结底,性能并不是唯一需要考虑的因素。在本文中,我们将探索这些新网格,以便您在选择其中一个时做出明智的决定。 关于容器视图的一句话 在我们开始探索 Grid 视图之前,让我先谈谈容器视图。...蜂窝再访 在文章 Impossible Grids 中,我们是否探索了Lazy Grid,我写了一个示例,说明如何使用这些网格来呈现蜂窝中的单元格。...然而,今年还引入了一个新的布局协议,在将我们的视图放置在屏幕上时,它提供了更多的选择。我们将在以后的文章中对此进行探讨。同时,我希望您喜欢这篇文章和 Grid 教练应用程序。 - EOF -

    4.4K20
    领券