专栏首页刘晓杰数独游戏开发

数独游戏开发

前阵子开发了一个数独游戏。我先展示一下成果,然后给出代码,最后讲讲我的收获。

首先展示一下成果。

以下是界面:

接下来是文件结构:

Game.java------数独游戏中的逻辑运算,包括计算一行或者一列未使用的数字

MainActivity.java------用来显示前面的界面,还包括menu选项

MyDialog.java------点击单元格显示的对话框

MyView.java------界面的生成,包括横线,数字

(具体每段代码做什么,我会在接下来的代码中给出详细解释)

接下来是代码

代码地址:点击打开链接

我的收获:

相对于第一个项目《家庭理财通》点击打开链接我有了进一步的收获。最大的收获是如何自定义View。

自定义View代码如下:

public class TestView extends View {
	
	public TestView(Context context, AttributeSet attrs, int defStyleAttr) {
		super(context, attrs, defStyleAttr);
		init();
	}

	public TestView(Context context, AttributeSet attrs) {
		super(context, attrs);
		init();
	}

	public TestView(Context context) {
		super(context);
		init();
	}
	
	public void init(){
		//自定义方法,包括初始化paint和canvas
	}

	@Override
	protected void onDraw(Canvas canvas) {
		super.onDraw(canvas);
	}
}

(三个构造函数其实可以任选) 重写onDraw用来修改视图的外观,当然还可以重写其他方法来实现其他的功能

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 专访UI中国认证设计师卤大湿 | 一位UI大师关于UI设计的思考

    现如今,设计师可以说是一个自带光环的Title,很多深藏不漏的UI设计师们都在以自己的方式为产品设计做出贡献,卤大湿便是这其中之一。

    奔跑的小鹿
  • BZOJ2037: [Sdoi2008]Sue的小球(区间DP)

    Sue和Sandy最近迷上了一个电脑游戏,这个游戏的故事发在美丽神秘并且充满刺激的大海上,Sue有一支轻便小巧的小船。然而,Sue的目标并不是当一个海盗,而是要...

    attack
  • 区块链如何提升游戏生态的价值「四问」

    许多人认为游戏是区块链最快的落地领域和重要的引爆点,知名游戏制作公司暴雪前员工也加入以分佈式帐本技术改善游戏产业的计划。首先可否简述一下区块链或分布式帐本技术能...

    南坡海瑞
  • 教你从头写游戏服务器框架

    大概已经有差不多一年没写技术文章了,原因是今年投入了一些具体游戏项目的开发。这些新的游戏项目,比较接近独立游戏的开发方式。我觉得公司的“祖传”服务器框架技术不太...

    韩伟
  • 【开源公告】简单易用的lua调试工具LuaPanda正式开源

    LuaPanda 是基于 VSCode 扩展实现的 lua 代码调试器。它的设计目标是简单易用,支持多框架。 项目特点是使用了lua / C 双架构。调试器...

    腾讯开源
  • 雄关漫道真如铁,而今迈步从头越!

    ? ? 2019刚刚拉开帷幕,在憧憬新的一年“诸”事大吉的同时,小编也想带着各位开发者朋友回顾一下腾讯位置服务的2018年,盘点那些我们一起经历过的2018年...

    腾讯位置服务
  • 英伟达CES开年发布:新卡RTX 2060下周2400元开售,17款RTX笔记本同发

    和去年一样,CES 2019国际消费电子展的第一场发布会依然由英伟达开启,这也是英伟达在2019年的第一场发布会。

    大数据文摘
  • 每天一道剑指offer-孩子们的游戏(圆圈中最后剩下的数)

    Java实现的话,可以使用LinkedList,考虑删除节点的效率。模拟游戏过程即可:其实这是个约瑟夫环问题,但是绝对没必要去死记硬背数学公式,直接用链表模拟游...

    乔戈里
  • 用Python做投资-python仿真等价鞅下的收益曲线

    如果我们按照这样的次序下注:1,2,4,8,16,......,2^n.只要有一次获胜,那么我们就从头再来。这里我们可以看出,每次获胜都可以赢得1元钱。因为2^...

    钱塘小甲子
  • Python:游戏:五子棋之人机对战

    五子棋比起我之前写的几款游戏来说,难度提高了不少。如果是人与人对战,那么,电脑只需要判断是否赢了就可以。如果是人机对战,那你还得让电脑知道怎么下。

    丹枫无迹

扫码关注云+社区

领取腾讯云代金券