自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Blankj

Blankj的CSDN博客

原创 Android开发人员不得不收集的代码(持续更新中)

做这份整理只是想把它作为Android的一本小字典,当遇到一些琐碎问题时,不用再面向百度或者谷歌查询API的使用,费时费力,这里有的话,大家尽管撸走。希望它能逐日壮大起来,期待你的Star和完善,用途的话大家想把它们整理成工具类或者什么的话都可以,之后我也会封装工具类并分享之,但本篇只是提供查阅,毕竟看md比看类文件要爽多了,其中好多代码我也是各种搜刮来的,也要谢谢各位的总结,大部分代码已验证过可行,如有错误,请及时

2016-07-31 04:26:42 9373 14

原创 Android开发之版本统一规范

Android开发存在着众多版本的不同,比如compileSdkVersion、minSdkVersion、targetSdkVersion以及项目中依赖第三方库的版本,不同的module及不同的开发人员都有不同的版本,所以需要一个统一版本规范的文件,现在我就来介绍一种方式:配置config.gradle文件。 在项目根目录,也就是跟app同一目录下的地方新建config.gradle文件,如下图

2016-09-21 19:13:28 4895

原创 Android开发人员不得不收集的代码(持续更新中)

Android开发人员不得不收集的代码(持续更新中)README of English为方便查找,已进行大致归类,其目录如下所示: Activity相关→ActivityUtils.java→Demo isActivityExists : 判断是否存在ActivitylaunchActivity : 打开ActivitygetLauncherActivity...

2016-09-21 12:11:36 257

原创 Android Studio下对资源进行分包

也许你曾经用过这个插件来对资源文件layout进行分类https://github.com/dmytrodanylyk/folding-plugin,但如今随着AS版本的升高,该插件已经不再支持。 now,我来分享一种比这个插件更加优秀合理地对资源进行分包,让你的资源文件看起来简明有序。 先上效果图,如下所示: 从图中可以看出,我们可以对每个页面的资源都进行具体分类,不只是layout,还

2016-09-21 11:32:59 1890 1

原创 实现滑动的七种方法(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。  当了解了Android坐标系和触控事件后,我们再来看看如何使用系统提供的API来实现动态地修改一个View的坐标,即实现滑动效果。而不管采用哪一种方式,其实现的思想基本是一致的,当触摸View时,系统记下当前触摸点坐标;当手指移动时,系统记下移动后的触摸点坐标,从而获取到相对于前一次坐标点的偏移量,并通过偏移量来修改

2016-08-01 00:58:52 1319

原创 滑动效果是如何产生的(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。前言:相对于Android2.X版本中常见的长按、点击操作,滑动的操作方式具有更好的用户体验性。因此,从Android4.X版本开始,滑动操作就大量出现在了Android系统中,各种第三方应用也竞相模仿这种效果,来改善自己的应用,下面就将向大家展示如何在应用中添加滑动效果。   滑动一个View,本质上来说就是移动一个

2016-07-26 01:21:44 434

原创 ListView常用拓展(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。  ListView虽然使用广泛,但系统原生的ListView显然是不能满足用户在审美、功能上不断提高的需求。不过也不要紧,Android完全可以定制化,让我们非常方便地对原生ListView进行拓展、修改。于是,在开发者的创新下,ListView越来越丰富多彩,各种各样的基于原生ListView的拓展让人目不暇接。下面

2016-07-25 16:20:42 681 2

原创 ListView常用优化技巧(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。前言:ListView——列表,它作为一个非常重要的显示方式,不管是在Web中还是移动平台中,都是一个非常好的、不开或缺的展示信息的工具。在Android中,ListView控件接管了这一重担,在大量的场合下,我们都需要使用这个控件。虽然在Android 5.X时代,RecyclerView在很多地方都在逐渐取代List

2016-07-25 00:14:48 1292 9

原创 利用EditText的RightDrawable切换密码显示

相信大家都见过如下图所示的密码文本输入框,点击右方的图标便可切换为明文显示密码。   在安卓中,我们可以充分利用EditText的RightDrawable来实现这样的效果,同理一键清除也可实现,其效果图如下所示。   下面对其进行简单介绍,首先是布局文件,很简单,就一个ImageView和一个自定义的EditText,代码如下所示。 <?xml version="1.

2016-07-21 17:16:11 957

原创 事件拦截机制分析(Android群英传)

当Android系统捕获到用户的各种输入事件后,如何准确地传递给真正需要这个事件的控件呢?Android给我们提供了一整套完善的事件传递、处理机制,来帮助开发者完成准确的事件分配与处理。   要了解触摸事件的拦截机制,首先要了解什么是触摸事件?顾名思义,触摸事件就是捕获触摸屏幕后产生的事件。

2016-07-21 14:39:02 1262 1

原创 自定义ViewGroup(Android群英传)

前面我们分析了如何自定义View,下面我们继续来分析如何创建自定义ViewGroup。ViewGroup存在的目的就是为了对其子View进行管理,为其子View添加显示、响应的规则。因此,自定义ViewGroup通常需要重写onMeasure()方法来对子View进行测量,重写onLayout()方法来确定子View

2016-07-20 18:05:14 782

原创 自定义View(三)(Android群英传)

上一篇自定义View(二)(Android群英传)中说的是创建复合控件,这篇介绍第三种自定义View方法,重写View来实现全新的控件。 重写View来实现全新的控件  当Android系统原生的控件无法满足我们的需求时,我们就可以完全创建一个新的自定义View来实现需要的功能。创建一个自定义View,难点在于绘制控件

2016-07-20 10:12:11 487

原创 自定义View(二)(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。上一篇自定义View(一)(Android群英传)中说的是对现有控件进行拓展,这篇介绍第二种自定义View方法,创建复合控件。 创建复合控件  创建复合控件可以很好地创建出具有重用功能的控件集合。这种方式通常需要继承一个合适的ViewGroup,再给它添加指定功能的控件,从而组合成新的复合控件。通过这种方式创建的控件,

2016-07-17 23:08:10 1956

原创 Android Studio混淆模板及常用第三方混淆(看了都说好)

首先要在build.gradle中开启混淆,也就是minifyEnabled true,我用的build.gradle具体如下所示: def releaseTime() { return new Date().format("yyyy.MM.dd", TimeZone.getTimeZone("UTC"))}android { .... buildTypes {

2016-06-30 17:23:58 26760 13

原创 自定义View(一)(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。  Android给我们提供了丰富的组件库来创建丰富的UI效果,同时也提供了非常方便的拓展方法。通过继承Android的系统组件,我们可以非常方便地拓展现有功能,在系统组件的基础上创建新的功能,甚至可以直接自定义一个控件,实现Android系统控件所没有的功能。自定义控件作为Android中一个非常重要的功能,一直以来都

2016-05-29 18:25:47 833 1

原创 ViewGroup的测量与绘制(Android群英传)

ViewGroup的测量  之前分析中说了,ViewGroup会去管理其子View,其中一个管理项目就是负责子View的显示大小。当ViewGroup的大小为wrap_content时,ViewGroup就需要对子View进行遍历,以便获得所有子View的大小,从而来决定自己的大小。而在其他模式下则会通过具体的指定值来设置自身的大小。   ViewGroup在测量时通过遍历所有子View,从而调用

2016-05-28 08:56:13 415

原创 View的测量(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出。  Android系统在绘制View之前也必须对View进行测量,即告诉系统该画一个多大的View。这个过程在onMeasure()方法中进行。   Android系统给我们提供了一个牛逼的类—-MeasureSpec类,我们可通过它来测量View。MeasureSpec是一个32位的值,其中高两位为测量的模式,低30

2016-05-20 03:41:26 415

原创 Android控件架构(Android群英传)

Android控件架构

2016-05-20 00:02:41 438

原创 博客已搬至自己搭建的博客处

博客已搬至自己搭建的博客处,有关LeetCode和Android欢迎到此处来。

2016-04-13 04:21:56 355

原创 线索二叉树创建及删除

题目描述线索二叉树概念 1.定义  n个结点的二叉链表中含有n+1个空指针域。利用二叉链表中的空指针域,存放指向结点在某种遍历次序下的前趋和后继结点的指针(这种附加的指针称为”线索”)。这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同,线索二叉树可分为前序线索二叉树、中序线索二叉树和后序线索二叉树三种。

2015-07-22 03:15:50 3286

原创 求二叉树中节点的最大距离

题目描述如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的,我们姑且定义“距离”为两个节点之间的变数。写一个程序求一棵二叉树中相距最远的两个节点之间的距离。输入要求输入的第一行包含单独的一个数字T,表示测试序列的数目;  以下每一行为一个测试序列,测试序列是按先序序列输入字符 ,如果节点没有左或右孩子,则输入用空格表示,最后用一个空格结束一行的输入。

2015-07-22 01:33:19 823

原创 2015浙江省蓝桥杯c/c++B组个人题解

奖券数目有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。52488#include #include #include #inc

2015-04-12 13:20:40 1556 4

原创 A sequence of numbers(快速求幂)

题目描述Xinlv wrote some sequences on the paper a long time ago, they might be arithmetic or geometric sequences. The numbers are not very clear now, and only the first three numbers of each seq

2015-01-12 23:31:46 689

原创 关于memset函数

相信很多人都知道这个函数,也都用过,但可能很多人跟我过去一样,认为它是赋初值函数,而不知它赋初值是八位八位进行的,知道了这句话那你之后的就都懂了。首先它是在头文件string.h中,这说明了什么呢,他操作的是字符类型,而字符类型有几位呢,那就是八位,所以它就是按八位来赋初值的。之所以我们平时可以用int array[100];memset(array,0,sizrof(array));

2015-01-04 23:51:36 669

原创 Additive equations

题目描述    We all understand that an integer set is a collection of distinct integers. Now the question is: given an integer set, can you find all its addtive equations? To explain what an addi

2015-01-04 01:52:46 1094

原创 Alphacode

题目描述Alice and Bob need to send secret messages to each other and are discussing ways to encode their messages:Alice: "Let's just use a very simple code: We'll assign 'A' the code word 1, 'B' wil

2014-12-29 13:50:34 597

原创 0/1背包问题(动态规划)

0/1背包问题:现有n种物品,对1i,价值为正整数Vi,背包能承受的最大载重量为正整数W,现要求找出这n种物品的一个子集,使得子集中物品的总重量不超过W且总价值尽量大。(注意:这里对每种物品或者全取或者一点都不取,不允许只取一部分)根据问题描述,可以将其转化为如下的约束条件和目标函数:于是,问题就归结为寻找一个满足约束条件(1),并使目标函数式(2)达到最大的解向量

2014-12-23 22:53:52 1901

原创 小游戏

题目描述迷宫 深搜一天早上,你起床的时候想:“我编程序这么牛,为什么不能靠这个赚点小钱呢?”因此你决定编写一个小游戏。游戏在一个分割成w * h个正方格子的矩形板上进行。如图所示,每个正方格子上可以有一张游戏卡片,当然也可以没有。当下面的情况满足时,我们认为两个游戏卡片之间有一条路径相连:路径只包含水平或者竖直的直线段。路径不能穿过别的游戏卡片。但是允许路

2014-12-16 10:15:13 989 1

原创 Knight's Trip 马在无线大棋盘上跳到指定点最小步数问题

题目描述Problem D: Knight's Trip In chess, each move of a knight consists of moving by two squares horizontally and one square vertically, or by one square horizontally and two squares vertically.

2014-12-09 13:23:40 2240 1

原创 三类最基本排序(插入,冒泡,选择)

插入是稳定的,冒泡稳定性取决于是否有等号,选择是不稳定的#include#include#include #include#include#includeusing namespace std;void fun();int main(){ fun(); return 0;}void fun(){ int temp,i,j, arr1[8]=

2014-12-08 19:50:58 619

原创 大数的乘法

题目描述大数是指计算的数值非常大或者对运算的精度要求非常高,用已知的数据类型无法精确表示的数值。例如:我们要计算如下两个数的乘积时,用我们已知的数据类型是无法精确表示其结果的:a1 = 11111111111111111111111111111111111b1 = 11111111111111111111111111111111111111求:a1 * b1;输入要

2014-12-07 21:06:45 822

原创 小鼠迷宫问题

小鼠a与小鼠b身处一个m×n的迷宫中,如图所示。每一个方格表示迷宫中的一个房间。这m×n个房间中有一些房间是封闭的,不允许任何人进入。在迷宫中任何位置均可沿上,下,左,右4个方向进入未封闭的房间。小鼠a位于迷宫的(p,q)方格中,它必须找出一条通向小鼠b所在的(r,s)方格的路。请帮助小鼠a找出所有通向小鼠b的最短道路。请编程对于给定的小鼠的迷宫,计算小鼠a通向小鼠b的所有最短道路

2014-12-07 00:32:41 1508

原创 KMP算法中的next[]数组

KMP算法最难懂的就是next[]数组的求法。用一个例子来解释,下面是一个子串的next数组的值,可以看到这个子串的对称程度很高,所以next值都比较大。位置i012345678910111213

2014-12-05 21:56:21 651

原创 求最长公共子串(串)

题目描述求采用顺序结构存储的串s和串t的一个最长公共子串,若没有则输出false,若最长的有多个则输出最先出现的那一串。输入要求输入两个字符串输出要求输出公共子串假如输入abcdefadbcef应当输出bc思路:1。 将连个字符串分别以行列组成一个矩阵。2。若该矩阵的节点对应的字符相同,则

2014-11-21 17:07:53 2307

原创 Alaska

题目描述Problem B: AlaskaThe Alaska Highway runs 1422 miles from Dawson Creek, British Columbia to Delta Junction, Alaska. Brenda would like to be the first person to drive her new elect

2014-11-17 22:23:29 1044

原创 Problem C: Celebrity Split

题目描述Problem C: Celebrity SplitJack and Jill have decided to separate and divide their property equally. Each of their N mansions has a value between 1,000,000 and 40,000,000 dollars. J

2014-11-17 21:11:00 760

原创 万年历打印

题目描述根据用户输入的年份,打印当年的年历。输入要求输入多个表示年份的整数,以0结束。输出要求打印每个年份的年历(0除外)。假如输入201320120应当输出 2013 Calander 一月星期一

2014-11-16 20:04:18 926

原创 约瑟夫问题

题目描述约瑟夫问题:有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王,编程求输入n,m后,输出最后猴王的编号。输入要求每行是用空格分开的两个整数,第一个是 n, 第二个是 m ( 0 0 0输出要求

2014-11-16 13:11:44 667

原创 1316: University

题目描述在大学里,很多单词都是一词多义,偶尔在文章里还要用引申义。这困扰Redraiment很长的时间。他开始搜集那些单词的所有意义。他发现了一些规律,例如“a”能用“e”来代替, “c”能用“f”来代替……现在他给出了字母的替换规则,如下所示,A被E替换,B被C替换,依次类推。A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

2014-11-15 15:31:13 1200

原创 目标柏林

题目描述1945年初,苏军和英美联军已从东西两面攻入德国国境。 4月初,在苏军和英美联军的夹击下,德军只能龟缩在以柏林为中心的德国东部的狭长地带,成了瓮中之鳖。 但希特勒困兽犹斗,一方面发出摧毁一切设施,实行“焦土”政策的指令; 另一方面下令把德国分为南北两个行政区,各自作战,他自己则固守柏林。 在这一天,苏军结果一份传自柏林的加密电文。经初步破译,显示希特勒要调集100万兵力, 在柏

2014-11-15 14:43:09 1297

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