Android如何自定义View实现五子棋小游戏
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,小编给大家分享一下Android如何自定义View实现五子棋小游戏,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体内容如
千家信息网最后更新 2025年01月19日Android如何自定义View实现五子棋小游戏
小编给大家分享一下Android如何自定义View实现五子棋小游戏,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
具体内容如下
代码:
package com.example.fiveson;import java.util.LinkedList;import java.util.List;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;public class FiveSon extends View { public FiveSon(Context context) { super(context); // TODO Auto-generated constructor stub init(context, null); } public FiveSon(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub init(context, attrs); } public FiveSon(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); // TODO Auto-generated constructor stub init(context, attrs); } private Paint paint = new Paint(); private Paint circlePaint = new Paint(); // 旗子: 信息 代表 第几行 第几列? private Listchesses = new LinkedList (); private void init(Context context, AttributeSet attrs) { chesses.add(new int[]{3,5}); chesses.add(new int[]{3,6}); } int spacing = 100; @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); int width = getWidth(); int height = getHeight(); //1 绘制 X 坐标 int num = width / spacing; paint.setColor(Color.BLACK); for(int i=0;i<=num;i++) { canvas.drawLine(spacing*i, 0, spacing*i, height, paint); } num = height/spacing; for(int i=0;i<=num;i++) { canvas.drawLine(0,spacing*i, width,spacing*i, paint); } //2 绘制Y 坐标 //3 绘制 旗子 if(!chesses.isEmpty()) { int count = chesses.size(); for(int i=0;i =(spacing/2)) { colcc++; } if(rowcc>=(spacing/2)) { rowcc++; }// 推断什么时候add int len = chesses.size(); if(len>0) { boolean has = false; for(int i = len-1;i>=0;i--) { int[] chs = chesses.get(i); if(rowNum == chs[0] && colNum == chs[1]) { has = true; break; } } if(!has) { chesses.add(new int[]{rowNum,colNum}); invalidate(); } }else { chesses.add(new int[]{rowNum,colNum}); invalidate(); } isComsumed = true; }else { isComsumed = super.onTouchEvent(event); } return super.onTouchEvent(event); }}
以上是"Android如何自定义View实现五子棋小游戏"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
内容
篇文章
五子棋
小游戏
五子
坐标
旗子
不怎么
代码
代表
信息
大部分
时候
更多
知识
行业
资讯
资讯频道
频道
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
郑州网络安全周总结报告
服务器查设备连接端口
济南昌世网络技术有限公司
服务器管理口用来做什么的
数据库建外键
华为云软件开发员工待遇
上汽乘软件开发待遇
信息泄漏到16e数据库
学术评价型数据库包括哪些
庞博数据库
软件开发面试时职业规划
常熟网络技术开发咨询热线
数据库表之间相连
应届生国企软件开发工资
研究生答案软件开发
超市外送app软件开发
广州公司培训软件开发
黑科技集中亮相互联网
河南智慧团建软件开发专业制作
ios自定义定位软件开发
cfps数据库打不开
监控状态管理服务器
附加数据库信息出现超链接
网络技术软件包
浙江口碑好的网络技术怎么样
陕西标准机架服务器
ipv6 认证服务器
互联网科技台历
从数据库下载
ios自定义定位软件开发