手把手教你写Android 贪吃蛇 游戏
先看看效果图 贪吃蛇设计思路贪吃蛇分为3个对象: 蛇 食物 舞台 舞台我们可以看作为一个二维数组 蛇和食物 都是数组中的元素 蛇是一串数组中的连续的元素 分为蛇的头元素和蛇身长度 食物可以看作是数组中的一个元素 蛇的移动蛇可以向上,向下,向左,向右移动 蛇移动 头元素+1 尾元素- ...
阅读更多
Blog 回归了
我的个人博客重新上线啦! 🎉 之前一直在部署在tencent的轻量服务器,体验实在不太好,后面了解到 vercel 喜出望外,立马重新把我的blog搭建起来。 过一段时间的调整与优化,我的博客终于再次与大家见面了!这里将继续记录我的思考、学习和生活点滴。无论是技术分享、读书笔记,还是一些随想与趣 ...
阅读更多
重温LRU缓存机制(LRUCache)
LRU是什么?LRU 是 Least Recently Used 最近最少使用。LRUCache是最近最少使用缓存机制,即会优先淘汰近期最少使用的缓存对象。 LRUCache的实现原理。LRUCache内部使用了LinkedHashMap来实现的。如果对LinkedHashMap不熟悉可以看这篇 ...
阅读更多
Android 数独 游戏
先看看效果图 数独设计思路先看布局,我们可以看到数独由9x9的格子组成,每个格子中间有一个数字。 Cell (单个格子、android 中我们可以先用TextView代替) Grid (由3x3 的Cell组成) Borad (由3x3 的 Grid组成) 数独是由9x9 的格子组成, ...
阅读更多
Google Storage 挂载Linxu 使用
本文简单的记录如何将Google Storage 作为文件系统挂载到Linux 中使用。适合服务器存储空间不够来使用。 安装 GoogleSDK一般我们都是访问console.cloud.google.com来操作,但是对于服务器而言,Google提供来一套SDK用于身份证和对GCP资源的操 ...
阅读更多
递归原理
递归是一种解决问题的有效方法,在递归过程中,函数将自身作为子例程调用 你可能想知道如何实现调用自身的函数。诀窍在于,每当递归函数调用自身时,它都会将给定的问题拆解为子问题。递归调用继续进行,直到到子问题无需进一步递归就可以解决的地步。 为了确保递归函数不会导致无限循环,它应具有以下属性: ...
阅读更多
杨辉三角 的算法实现
杨辉三角形是排列成三角形的一系列数字。 在杨辉三角形中,每一行的最左边和最右边的数字总是 1。 对于其余的每个数字都是前一行中直接位于它上面的两个数字之和。 下面给出一个5行的杨辉三角: 基本情况可以看到,每行的最左边和最右边的数字是基本情况,在这个问题中,它总是等于 1。因此,我们可以将 ...
阅读更多
Android ConstraintLayout 2.0:ConstraintLayoutStates
随着ConstraintLayout 2.0的推出,有一个名为ConstraintLayoutStates的有趣新功能。 ConstraintLayoutStates允许您创建具有不同状态的布局,并轻松地在它们之间切换。 通常,大多数布局包含加载状态,初始状态,结束状态和错误状态。 使用Constr ...
阅读更多
了解Android Matrix转换
原文 Understanding Android Matrix transformations 很多年前,在学校我学习了矩阵。 我记不太清楚了,但我记得的是在想,“但是……你对这些知识做了什么呢?” 快进几年,我开始作为Android开发人员工作,不得不使用ImageView的scaleTyp ...
阅读更多
Android 录制视频 Camera占用的解决方法
最近需要修改项目中的视频录制功能,原来没怎么理会,可以正常录制。 但是不录制直接返回Camera就会出现占用情况,而且连系统相机都无法正常使用了。 只能重启手机,调试起来也比较麻烦。 最后发现 由于不当的调用 camera.lock()和camera.unlock()导致的 看一看这两个方法的解 ...
阅读更多