为了学习Android,自己编了一个小游戏,数独。 特点: 1.自动分析可选数字。 2.自动判断结果 3.支持Undo功能(Command设计模式) 4.支持自编题目。

功能简介

主画面 功能: 1.点击项目选择题目 2.按【Menu】键新建题目 3.长按项目选择删除或编辑题目

游戏/编辑画面

功能: 1.按数字按钮选择数字(置灰按钮不可选) 2.按【Undo】按钮取消上一步操作 3.编辑状态时按下【menu】键可以选择清除输入结果或保存题目 游戏状态下按下【menu】键可以选择清楚输入结果或启动自动填写功能(根据现在状态可以判断的部分)

基本的想法

最初的时候,每个格都有选择所有数字的机会,当相同行或相同列或相同块的其他格选择了某数字是,这个数字就不能再选。

当一个格的可选数字之剩一个时,就作为答案使用,这是这个结果又会影响其他的同行,同列及同块的格。有点递归的感觉。

当一个格里的可选数字都没有了的时候,判定失败。

为了在选错的时候,有取消的机会,通过Command设计模式实现的动作的记录和恢复。这里麻烦一点的是在某一格的数组决定以后,会对其他各有影响,需要记录所有的变化。

挺复杂的吧,其实代码比想象的要简单。

可以从这里(http://down.51cto.com/data/255564)下载工程文件和源代码。

更多相关文章

  1. 关于android多任务同时下载的一点心得
  2. Android(安卓)密码校验,字符串中必须包含字母或者数字
  3. Android实现再图标右上角显示数字
  4. Android保存位图
  5. Android实现短信验证码自动拦截读取功能
  6. FAQ_10_EditText与parseInt方法
  7. Android使用Handler实现下载文件功能
  8. Android简易计算器(四)—— 完整逻辑代码
  9. Android基于Http协议实现文件上传功能的方法

随机推荐

  1. Android端腾讯性能监控框架Matrix源码分
  2. 我的第一个Android程序helloword及个人理
  3. adb devices找不到设备
  4. Android异步消息处理机制深度解析
  5. 【Android】实现XML解析的几种技术
  6. Support v4 v7 v13: Android Support Libr
  7. (转)Android中LocationManager的简单使用,
  8. 如何开发Android Maps
  9. 【移动安全高级篇】————7、APK 的自
  10. Android 开源绘画板项目 (ScaleSketchPadD