自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (5)
  • 收藏
  • 关注

原创 Android华容道之一步一步实现-8-开始游戏

开始游戏指的是开始打乱图片顺序。效果图如下:先说产生随机数,利用随机数产生一个[0-14]的整数,代码如下:private void init_num_arr() { for (int i = 0; i < 16; i++) { num_arr[i] = -1; } num_arr[15] ...

2019-04-19 08:03:25 790 1

原创 Android华容道之一步一步实现-7-重构代码

是时候做一点代码的重构了,毕竟已经是一个可运行的版本了,并且顺带做一点点美化的工作,先看效果图,重构和美化完之后的版本效果图。重构第一部分如果是数字版,不再使用带有数字的图片,而是使用动态创建数字图片的方式。并在图片上绘制数字,代码如下:private void draw_text(Bitmap bitmap, String text) { int...

2019-04-18 09:03:58 919

原创 Android华容道之一步一步实现-6-还原状态检测

再次说明一下,我们的华容道的最终版本是图像华容道,不是纯数字的华容道,难度当然要比纯数字版的华容道大多了,因为在玩的时候要记住整福图像以及被切分后,每一张小图片应该在什么位置,如果是一幅您不熟悉的图片的话,是很考察观察力和记忆力的。但是无论是图片版也好,数字版也好,我们实现的本质都是一样的。我们先说数字版的华容道怎么判断已经还原。还原状态也就是初始状态,1234,5678,9 10 1...

2019-04-17 09:11:12 407

原创 Android华容道之一步一步实现-5-图像块移动算法实现

首先祝贺一下,完成这一步,0.1版的图像华容道就实现了,就是能够自己可以自由玩耍了。不要着急一次成型,要使用Agile的思想,每天一次更新,但是每天都是可用的,一个可用的软件比别的都重要。优化啊,界面啊,性能啊,重构啊,别急,慢慢来。在上一篇文章中提到了具体的算法思想,这次就是具体的实现,主要就这个一个函数,根据手指触摸的位置来对所有的图像块进行重新排序,但是实际上每次最多三块图像的位...

2019-04-17 08:20:33 788

原创 Android华容道之一步一步实现-4-图像块移动算法

下一个关键点就是图像块的移动,以如图为例。假设空格处于第二行第三格,那么此时只有触摸第二行以及第三列的图像块的时候才需要移动图像块,因为别的图像块不能移动。当触摸发生在合法的图像块的时候,即上面图中的十字交叉黑线区域,则有四种情况出现,即移动图像块有四种可能,向上,向下,向左,向右。比如手指触摸在7号图像块,这7号图像块只能向左移动,别的图像块都不用移动。再比如手指触摸在...

2019-04-16 10:15:05 748

原创 Android华容道之一步一步实现-3 -手指触摸处理

华容道关键点之一出现了,就是处理触摸,包括手指按下,抬起,移动等。自己实现一个处理触摸的类,然后处理onTouchEvent(MotionEvent event)事件,在这里处理手指按下,抬起,移动事件。代码为:这里的效果是手指触摸一下,16块小图像依次交换package com.example.szhrd;import android.R.bool;im...

2019-04-16 09:45:36 904

原创 Android华容道之一步一步实现-2-图片分割

因为华容道是16个格子,所以要把一张大一点的图片分割成16个相等的小图片。可以使用Bitmap.createBitmap方法来进行。直接上代码ori_bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.koala);原始图片下面对原始图片进行切分,分为16张 ori_bitmap = ...

2019-04-15 21:36:30 1590 1

原创 Android华容道之一步一步实现-序言

女儿看了最强大脑的数字华容道节目之后,就缠着要玩数字华容道,买了实物版,玩了几天,感觉好像还没有过瘾,就让我做个手机版的数字华容道游戏。说明一下,最终要实现的版本并不是最强大脑那种数字版的华容道,而是图像版的华容道,也就是说要比数字华容道的难度大多了,玩的时候不但要记住整福图像,而且要记住每一个小图像块的位置才能还原,不但需要很强的观察力,也需要很强的记忆力,因为这不是拼图游戏。虽然是久经...

2019-04-15 09:18:34 1930

原创 Ubuntu迁移/boot卷

默认/boot卷总是不是太大,总是有很多理由需要/boot卷很大,说重点,如何在不重新装机的情况下迁移到另外一个空间很大的卷上。步骤:(亲测有效)假设有一个卷/dev/sdc1,并且空间足够1.拷贝/boot里面的所有东西到一个临时目录,比如叫/tmp/boot2.umount /boot3.mount /dev/sdc1 /boot4.拷贝/tmp/boot里面的所有文件...

2019-04-05 19:11:16 911

C语言控制台时钟显示代码

C语言控制台时钟 printf("1.改变钟的样式 2.设置闹铃 3.启动秒表 4.退出\n"); scanf("%d",&choose_type); switch(choose_type) { case 1: { if(clock_type == 1) clock_type = 0; else clock_type = 1; } break; case 2: printf("请输入闹铃时间,几点几分,格式为:小时:分钟"); scanf("%d:%d",&bell_hour,&bell_minute); bell = 1; break;

2021-03-07

C/C++图实现运动会比赛安排

C/C++图实现运动会比赛安排 int map[49];//邻接矩阵,使用一维数组表示,下标=行*结点数+列 int color[7];//存入每个项目的颜色号 const char *n[6] = { "张凯","王刚","李四","张三","王峰","李杰" };//参赛人员姓名 const char *b[7] = { "标枪","铅球","铁饼","100m","200m","跳远","跳高" };//比赛项目

2021-03-07

C/C++哈弗曼编码,译码

【基本功能】 将哈夫曼编码应用于通讯系统时,在发送端对待发电文进行编码,在接收端对收到的电文进行译码。对于双工通讯,每端都需要一个编码器和译码器。请设计一个哈夫曼编码器/译码器。 【基本要求】 (1)初始化:键盘输入n个字符和n个权值,建立哈夫曼树; (2)编码:利用已建立的huffman树生成huffman编码 ; (3)译码:利用已建立的哈夫曼树对一段代码进行译码。

2021-03-07

C语言宿舍管理系统,二分查找

C语言宿舍管理系统,二分查找,支持保存文件,从文件中读取 /* 按照姓名,学号或者宿舍号排序 从小到大 oerderBy: 1-按照姓名 2-按照学号 3-按照宿舍号 */

2021-03-07

基于C++模板(template)的二叉树,支持任意类型为数据

基于C++模板(template)的二叉树,支持任意类型为数据 支持查找,删除,遍历等 /* 二叉树节点信息 */ template<class T> class BiNode { public: T data; BiNode <T>* lch; BiNode <T>* rch; BiNode() :lch(NULL), rch(NULL) { }; }; template<class T> class BST {

2021-03-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除