正文
android小游戏,android小游戏demo
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
旋转我什么意思
一款休闲益智小游戏。旋转我是Android平台的一款休闲益智小游戏。该游戏训练你的大脑思维,逻辑按照样板旋转屏幕上的图标,匹配和上方样板的一样即可进入下一关。该游戏凭借有趣的游戏内容,受到了一大批粉丝的青睐。
Android系统自带小游戏如何激活
每个安卓手机的安卓系统中都会携带一个小游戏,那么怎么激活这个小游戏呢,下面就给大家介绍一下。
01
首先打开系统设置,每个手机进入设置的方式不同,如果是小米手机,点击顶部的我的手机就可以进入系统界面。
02
进入手机设置以后就可以看到手机中的参数。想要了解安卓系统继续点击全部参数。
03
在这里面就可以看到自己的安卓版本,连续点击三次安卓版本。
04
弹出来的页面就是安卓系统自带的小游戏页面,每个小游戏玩法都不同。快去探索吧。
求安卓手机上经典好玩的小游戏。最好在25M以内。
水果忍者、愤怒的小鸟(有很多版本,最新的太空版)、割绳子、贪婪的蜘蛛。
均在25m以内,均有中文版
做了一个android的小游戏,怎么在Activity添加游戏的音效
游戏中的声音一般有两种,一种是背景音乐 时间比较长的 一般使用mediaplayer这个类加载资源文件进行播放,另外一种就是游戏的音效 比如发射子弹的声音 这种短暂的一般使用souldpool 这个类加载资源文件进行播放。具体怎么使用你可以搜索一下这个类的用法。
Android小游戏 之《数字华容道》
[toc]
最近看《最强大脑》,看到其中的“数字华容道”这个小游戏挺有意思,于是萌生了自己写一个的想法,正好结合之前的文章 《Android开发艺术探索》第4章 View的工作原理 ,顺便复习一下。
GitHub链接:
说做就做。
经过一夜的粗制滥造,初版已经完成,现在复盘一下详细过程。
在4x4的方格棋盘中,摆放了1 15一共十五个棋子。玩家需要在最短时间内,移动棋子将1 15按顺序排列好。
本文app结构很简单,分为三个界面:目录,游戏,高分榜。分别对应的是MenuAcitivity、GameActivity、HighScoreActivity。其中MenuActivity为主界面。
新建棋盘类 BoardView ,继承自ViewGroup。在xml文件中直接加入BoardView即可。
新建棋子类 CubeView ,继承自TextView。
棋子只包含一个数字,所以简单的继承自TextView即可。由于我们还需要比对棋子是否在正确的位置,所以我们还需要给每个棋子加上数字和位置属性。
这里,我们定义了一个类Position,用于描述棋子在棋盘中的位置。
我们参考Android系统屏幕坐标系,以棋盘左上角为零点,每向右一格横坐标加一,每向下一格纵坐标加一。如图:
接下来,我们开始定义棋盘View:BoardView,这也是这个游戏的重头戏。
首先,考虑需要添加哪些属性。由于时间关系,我这里只加入了棋盘尺寸。
在style.xml文件中加入:
其中sizeH为棋盘列数,sizeV为棋盘行数。(默认4x4大小,以下文中均以4x4为例)
分别对应BoardView的 mSizeX 和 mSizeY 属性。
首先我们新建一个 cube_view.xml ,作为单颗棋子的布局。在BoardView的构造方法中,我们使用LayoutInflater将总共15颗棋子加载出来,并指定它们的位置,逐一保存在mChildren数组中。
最后,我们记录了没有棋子的空格所在位置 mBlankPos 。这个位置很关键,因为我们之后的的操作中都是围绕这个空格来的。
measure和layout的过程很简单,这里由于是自己使用,假定宽高都是定值。因为之前所有的CubeView都没有定义宽高,默认是0,所以在onMeasure中,我们使用BoardView的宽除以列数,高除以行数,得到每颗棋子的宽高并给其赋值。这样处理虽然很粗放,但是只是试玩的话并没有什么影响。
我是按照从左往右、从上往下的方式依次排列棋子,并且没有考虑棋子的margin属性,所以onLayout很简单:
至此,棋子在棋盘中就已经排列好了。
一开始的时候,我考虑的是,生成1~15的不重复随机数,然后依次给CubeView赋值即可。即:
虽然看起来是能行得通的,但是在实际的游戏过程中,遇到了非常严重的问题,那就是会出现无解的死局,也就是说无论如何都不可能解出来的棋局。经过网上搜索之后证实了这个bug的存在,而且市面上流传的该类app很多都是有这个bug的!所以这个办法就被废弃掉了,得想一个新的方法。
由于必须是按照顺序放置然后打乱的棋局才能保证有解,不能随机乱放置,所以我就模拟手动打乱,写了一个新的棋局生成器:
原理很简单,因为空格的位置是唯一的,那么我们把空格的上下左右四个棋子随机找出一个,与空格互换位置,也就模拟了一次手动点击。当点击的次数足够多时(这里循环了10000次),就可以看做是已经打乱的棋盘了。
最后把生成好的棋盘,保存在一个二维数组中即可。
(因为有个10000次的循环,我担心时间过长,于是将其放在线程中执行,但是后来我觉得自己多此一举了。)
然后,在BoardView中定义一个setData方法,来把生成好的棋局装进来:
这样,就完成了棋局的生成。
游戏过程基本是极简的。
在初始化方法中(2.1),我们给每个棋子都定义了点击事件,模拟真实场景。具体来讲,就是当我们点击一个棋子的时候:如果棋子在空格周围,则将棋子移动到空格处;反之,则不进行任何操作。(如果设置滑动同理)
这样我们的Position类就派上用场了。
在2.1的 init() 方法中,我们有这么一句:
即是,当我们点击了其中一个棋子时,会触发 moveChildToBlank(view) 方法。这个方法的目的正是上面所说。
在移动棋子之后,我们需要检查一下是否是正确排列的顺序,如果是的话,那么表明游戏完成。
首先创建HighScore类,包含姓名,用时,步数,时间。
高分榜使用SharedPreferences+Gson,将一个ListHighScore转换为json形式保存在本地。
最佳成绩的记录是在GameActivity中完成的。流程如下:
总的来说,逻辑简单清晰。
自己开发的自然是需要作弊功能了!暂且不表。
由于只用了一个晚上完成,所以还很粗糙,很多功能不够完善,而且也没做适配和测试,难免会有bug存在。主要是把思路记录下来,方便以后自己和他人做个参考。
数字华容道GitHub地址:
通过视频可以玩的互动游戏
可以。
很多玩家十分喜欢玩游戏,轻松互动,还有一个获奖团队,思路新颖,开发了一款基于双人视频聊天场景的Android小游戏“拿头玩”。
可以玩的互动游戏直播刚起步,有没有推荐有意思一点的直播间互动小游戏,纸牌游戏也可以。在视频聊天过程中即可开启游戏。
通过人脸识别算法识别转头方向,实现以“接锅”和“甩锅”为主题的玩法。目前实现了Android版本。