Android 简单实现贪吃蛇源码

android 简单实现贪吃蛇源码

一:实现原理
通过自定义view,然后根据小蛇的移动速度来不停的更新,绘制界面。

二:效果如下
这里写图片描述

三:核心实现
1:小蛇的位置是由很多点来绘制完成的,里面的点全部装在里面ArrayList里面。

”private ArrayList<snakePoint> SpointList = new ArrayList<>();

snakePoint 的代码如下

    class snakePoint {
        /**
         * 小蛇某个点x的位置
         */
        int x;
        /**
         * 小蛇某个y的位置
         */
        int y;

        snakePoint(int x, int y) {
            this.x = x;
            this.y = y;
        }
    }

2:在ondraw里面绘制出来这些点,区别蛇头和蛇尾

     for (int i = 0; i < SpointList.size(); i++) {
            snakePoint sp = SpointList.get(i);
            Rect rect_showPosition = new Rect(sp.x - snakeSize, sp.y - snakeSize, sp.x + snakeSize, sp.y + snakeSize);
            if(i==0){
  //蛇头
                canvas.drawBitmap(snake_head, rect, rect_showPosition, paint);
            }else{   //蛇尾
                canvas.drawBitmap(snake_body, rect, rect_showPosition, paint);
            }
        }

3:食物的绘制,通过随机的方法生成一个小与手机屏幕宽高的点,通过ondraw在绘制出来。


     /***
     * 随机添加食物
     */
    
  • 4
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 37
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值