###前言
Android原生开发也可以实现一些简单的小游戏。今天给大家讲解一个Android实现拼图小游戏的知识。游戏拼图,在很多地方应该都是有讲解的了,不过,我今天要讲解的不同在于,我已经将这个拼图游戏功能封装都了一个类——Puzzle中,然后会讲解些在实现过程中需要注意的问题和心得。
今天设计内容:
1. `Puzzle`类的主要方法介绍
2. `Puzzle`在`MainActivity`中的应用
2.1 在游戏界面添加GridLayout布局
2.2 Puzzle在MainActivity中的使用
3. 需要注意的问题及心得
3.1 设置图片为方图,且不能太大
3.2 方块移动过程中不可操作
3.3 在图片上滑动手指,方块不移动
3.4 开局随机打乱图片时出现结束图
3.5 设置游戏生命周期
3.6 心得
4. 效果图和项目结构图
先来波效果图
![](/contentImages/image/20200309/oZrhcOnt7hMozkUP6UA.gif)
####一. Puzzle类的主要方法介绍
`Puzzle`作为一个拼图游戏封装类,具备以下几个重要方法:
```
/**初始化(所有参数设置完毕后才能执行)**/
public void init(Context context)
/**游戏结束的监听**/
public Puzzle setOnGameOverListener(OnGameOverListener listener)
/**设置拼图布局控件**/
public Puzzle setGridLayout(GridLayout gridLayout)
/**
* 设置拼图行列数
* @param count 行列数
* @return
*/
public Puzzle setCount(int count)
/**
* 设置拼图图片资源id
* @param imageId
* @return
*/
public Puzzle setImageId(int imageId)
/**是否响应手势玩游戏,默认不支持手势**/
public Puzzle setGestur(boolean gestu