自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

持剑

深度,想法,执行力

  • 博客(19)
  • 资源 (26)
  • 收藏
  • 关注

原创 算法学习(三)堆排序

要弄清楚堆排序,我们首先要懂得以下两点:1)逻辑上的结构,怎么样才是一个堆。2)存储上的结构,一个堆存储起来的结构是怎么样的。一般来讲,堆排序中的“堆”指的是二叉堆,一种完全二叉树的结构,每个父结点最多只有两个子结点,且满足两点:1)父结点总是大于(小于)其两个子结点(大于的,我们叫最大堆,小于的,我们叫最小堆)。2)父结点的左右子树也都满足上面1)的规则,也就是说其左右子树也是一个最大堆或者是最小堆。。。。1)从第一个非叶子结点开始,也即是7开始,我们比较它跟其左右子结点的值,将三者中最大的

2014-02-28 22:32:03 1519

原创 Android学习小Demo(10)ToDoList的改进版之ViewPager显示多个图片

在TodoList增强版的增加界面上,为了显示图片,我是挖了两块地方,放了两个ImageButton,来显示图片,而且限制了最多只能放两张图片。当两个View都放置图片之后,我就会把“Gallery”和"Camera"的两个按钮给隐藏掉,如下图红框显示中,已经没了:我们在这个位置放一个Layout(什么样的Layout都可以,我原来是用一个FrameLayout的,但代码中有点问题,我以为是它的问题,就改成LinearLayout,然后就忘了改回去了。)Layout里面会放一个ViewPager(这是v

2014-02-27 22:59:08 4370 7

原创 Android学习小Demo(10)ToDoList的加强版

前两天去超市逛东西,问老板娘这个东西多少钱,那个东西多少钱,但是一两分钟后就搞混了,当时就想,我不是写了一个todo的吗,可以再拍照放上去,这样就有对比啦!于是兴冲冲地赶回家,把功能给实现了,虽然这功能到处都有,但是自己实现出来的就是不一样啊,界面丑点也是自己的孩子啊,而且这孩子会长大啊,可以继续完善的嘛。先上几张效果图:...由上面两张图可以看到:1)在屏幕上方专门挖出了两块地来放两个Image2)在右下角放了两个button,一个是挑选图片,一个是直接打开照相机照相,然后返回的图片就会放到这两

2014-02-26 00:03:07 3871 2

原创 算法学习(二)快速排序(下)

里是将数组的最后一个元素作为基准数来比较,如图中a[8] = 10。2)同样的,也有两个指针i 跟 j,但 i 一开始的位置是起始位置 - 1,如上面应该是 0 - 1 = -1。为什么会是这样呢?3)j 会一直向右扫,每次扫都会比较当前数a[j] 是否比基准数小,如果是的话,则会把 i + 1位置的数跟a[j]的值互调。这里我们就要回答一下为什么是要拿 i + 1位置的数跟 j 相调,为什么一开始要i 设置成 low - 1呢,就是因为 i 当前位置的值a[i] 其实就是上一轮交换的数,它本来就是比基

2014-02-22 19:30:21 1603

原创 算法学习(二)快速排序(上)

1)首先要有两个指针,一个从最前面开始,一个从最后面开始。2)将数组中第一个元素拿出来,作为一个基准数来比较,比它大的,扔到后面,比它小的扔前面。而由于将它拿出来了,它原先所处的位置就空出来了,如图上的11。3)从数组后面开始往前扫描,拿值与基准数比较,如果比基准数小,则将它放到数组中空出来的位置,也就是 i 当前的位置了。如图中,第一个 j 的值就是10,比基准数11,则将它放到a[i],此时 i 的值是0,而a[i]是空出来的位置,那么 i 被放了,我们就要把 i 的指针往前移一位,而由于 j 的值

2014-02-21 23:47:30 2182

原创 Android学习小Demo(9)一个To Do List的实现

记得看过一篇文章,是说一个人临走之前,列下了想做的最后100件事情,然后拿着这张便签,一件一件地去实现。又想起乔布斯说,如果今天是你的最后一天,你会怎么过?我有很多事情想做,想写很多的文章,但是时间真的很不够用,妹妹说想把一天当做两天用,但是我想拆成三四天用。。。这个小程序是我写来放在手机里,写上自己想做的事情,然后一件一件地完成,人生很短,真的很短。。。。嗯,没错啦,这个小demo就是对前面咱们讲过的那么多知识的一个很好的应用。光学总归是不够的,还是需要亲自去动手去做,去实践,才能够真正做到用啊

2014-02-20 23:59:09 3126 1

原创 从1亿个ip中找出访问次数最多的IP

处理海量数据问题存在的原因就在于1)数据量太大,无法在短时间内解决;2)内存不够,没办法装下那么多的数据。而对应的办法其实也就是分成1)针对时间,合适的算法+合适的数据结构来提高处理效率;2)针对空间,就是分而治之,将大数据量拆分成多个比较小的数据片,然后对其各个数据片进行处理,最后再处理各个数据片的结果。原文中也给出一个问题,“从1亿个ip中访问次数最多的IP”,就试着来解决一下吧。

2014-02-16 18:48:56 7879 7

原创 Android中关于Adapter的使用(下)BaseAdapter

1)ArrayAdapter,是一个跟Array结构对应的Adapter,所以它展示的内容取决于Array里面装的对象,在默认或者大部分情况下,如果一个list只是要用来展示一些文字方面的效果,比如文章列表,联系人列表等比较简洁的描述,这是个最好的选择。当然,我们也可以通过继承它来自定义一个Adapter。2)SimpleAdapter,需要1)我们自定义item的布局,2)需要我们将数据源封装成一个List<Map<String,?>>结构的列表中去,3)要将布局中的控件跟map中的数据对应起来。Sim

2014-02-15 20:37:51 4033

原创 Android中关于Adapter的使用(中)SimpleAdapter

在前面的两篇文章中,我们讲到了关于ArrayAdapter的使用。用ArrayAdapter来在ListView中展示数据是很不错的,但是很多时候,我们的ListView中,可不只是展示文字,我们还想展示图片呢。可能有些朋友刚才会问,第二篇不是已经可以展示图片了吗?是的呀,但是它就只能展示我们在xml中定义给它的那一张啊。而究其原因,其实是因为我们传给它的数据源就只有字符串,没有传给图片给它,而事实上,我们也只能传文字给它,因为它用的是TextView嘛。所以,光用ArrayAdapter显然不够丰富

2014-02-15 17:46:29 3949 1

原创 Android中关于Adapter的使用(再上)ArrayAdapter

在上一篇文章中,我们是直接将一个String的ArrayList传给ArrayAdapter,然后ArrayAdapter会将其中的字符串一个一个地放到对应item上的TextView中,最终展示出来。但是当时我们用的是android系统中提供的布局文件,我们可以用自己提供的布局文件吗?当然是可以的。如下,我们在layout文件中定义一个arrayadapter.xml,在里面放上一个TextView(这个TextView可是一定要的,因为要用来展示字符串的),如下:

2014-02-15 16:36:12 4408

原创 Android中关于Adapter的使用(上)ArrayAdapter

在Android应用的开发中,ListView是最常用的一个列表显示控件,微博,联系人啊,反正只要涉及多数据展示的情况,都会用到ListView(另外就是GridView)。那么ListView又是如何来展示数据的呢?这就是Adapter的应用了。Adapter是将数据展示在ListView(GridView)中的一个接口。通过不同的Adapter,可以很方便地展示数据,也可以实现各种自定义的效果了。在Android日常的开发中,常用的Adapter有如下三种:1)ArrayAdapter2)Sim

2014-02-15 15:54:14 10221

原创 Android学习小Demo(8)SQLiteDatabase的使用

在Android中,除了我们之前说过的sharedpreference可以用来保存数据之外,SQLiteDatabase应该是使用得最广泛的一种数据保存方式。SQLite是一个嵌入式的数据库,支持一般数据库的增删查改,如果大家对数据库有一定的了解的话,会发现,其实这也是很简单的一种使用方式。今天我们就来看一下在Android中,SQLiteDatabase的实际应用。。。。在这个类中,我们要实现三个函数:1.1)构造函数,要调用父类的构造函数,将数据库名和版本(DB_NAME和VERSION)传进

2014-02-12 22:24:43 2919

原创 动态规划(一)之背包问题

如果一个问题可以用动态规划来解决,那么这个问题需要满足两个条件:1)这个问题可以分解成很多子问题,并且这些子问题的最优解给合起来,就是大问题的最优解。2)这些很多的子问题有很多是重复的。下面是经典的背包问题。。。第一个是判断1)当前物品的重量是不是比这个背包重,如果比这个背包重,我们就直接pass,就是我们上面举例说的第三步了,背包重量只有1的时候,重量大于1的都不用考虑。第二个是判断:2)当物品的重量是可以放进背包的时候,就要考虑一下,放了这个物品之后,剩下的重量的最优解加上当前物品的价值

2014-02-11 00:52:58 1527

原创 Android学习小Demo(7)SharedPreference的使用

在Android系统中,有各种不同的存储方式,而SharedPreference就是其中最简单的一种。SharedPreference本质上就是一个xml文件,其存储结构则是一个Map,里面的值都是以键值对<Key,Value>的形式存在,如下图:...可以看到根结点是一个<Map>元素,下面的每一个元素都是我们存进去的值,分别对应不同的基本属性,sharedpreference也仅支持这些简单的基本属性。因为其简单,所以一般来说,我们用sharedpreference来存储一些简单的状态信息,比如

2014-02-08 23:58:35 2993

原创 关于ShapeDrawable应用的一些介绍(下)

我们今天接着来看一下Shape中的stroke属性,stroke其实就是边缘的意思,当我们在定义画笔的时候,有很多时候会用到 FILL 和 STROKE,前者能够画出一个实心的形状,而后者就画出一个空心的图形,所以在这里,stroke表示同样的意思,就是描边。它只有四个属性:1)android:width,表示的是线的粗细。2)android:color,表示的是线的颜色。...如果我们定义的形状是"ring",我们必须把android:useLevel设为false,不然的话,这个环是显示不出来

2014-02-05 12:09:11 2204

原创 关于ShapeDrawable应用的一些介绍(中)之Gradient

Gradient,渐变,是在界面设计中最经常用到的一种技巧,只要涉及到颜色的处理,浓妆淡抹总相宜,说的就是它。在Android中,当然也提供了这样的技能,就看我们能不能 get it了?人比较笨,还是得从基础学习,再慢慢来熟悉它。我们在 res / drawable/ 中 创建一个xml,代码如下:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android

2014-02-03 23:36:10 3802 1

原创 关于ShapeDrawable应用的一些介绍(上)

在Android中,很多时候系统原生的控件的格式并不能满足我们的需求,我们想要更加好看点的样式,像什么圆角矩形啊,颜色渐变啊,阴影效果啊等等的,这个时候就是我们的ShapeDrawable发挥效果的时候了,接下来我们这两篇文章就来说一下Shape的一些应用吧,掌握点基础知识,才能好好更好地去应用啊。其实很多东西并不难,我们也不是不懂,但是关键得懂得总结呀,对吧。1)首先,我们要在res/drawable/ 路径下创建一个xml文件,其格式如下: android:shape=["rectangle

2014-02-02 23:54:32 3053 3

原创 Android学习小Demo(6)图片折叠效果的实现

因为分成的第一份都要实现一个往后推的效果,所以分成多少份,对应的我们也要为各个长方形准备对应的matrix来实现变化,所以在下面也会同时new出一个matrix。2)分成相同的等份之后,我们就要考虑如何为每一个长方形设置变化的矩阵了。2.1)分析拆分出来的矩形区域及折叠时候的效果,可以发现,偶数位(从0开始)的矩形是右边的那两个角往后推,而奇数位的矩形则刚好相反,当偶数位的矩形在往后推的时候,奇数位的矩形则相对着其也在往后推,并且在往后推的同时,每个矩形的宽度缩小的比例也是一致的。所以根据这几点,我们可

2014-02-01 23:17:41 4957 2

原创 Android学习小Demo(5)结合Matrix跟Porperty Animatin 实现推拉门效果

在Android中,实现3D的效果,可以通过OpenGL/ES,Camera,也可以通过Matrix的PolyToPoly来实现。OpenGL比较复杂麻烦,但是其实现的效果也最好,在游戏制作中利用的比较多,而Camera是Android中提供的一个包装好的类,模拟了一个观察点,通过改变这个观察点,从而实现纵深的变化,达到3d的效果。我们前两篇文章都在讲Matrix,那么这一章我们也通过Matrix,再通过属性动画中ValueAnimator的应用, 来简单实现一个推拉门的效果吧。...这里我们看到po

2014-02-01 16:18:34 4163 3

aidl实现跨进程通信Demo(进阶版)

Android利用Aidl实现跨进程通信并传递数据的Demo

2015-01-18

Aidl 小Demo 简单版

Android学习小Demo(23)Aidl实现进程间通信

2015-01-18

Android联动ListView

Android学习小Demo(21)ListView的联动选择 http://blog.csdn.net/linmiansheng/article/details/37914675

2014-07-17

关于Fragment Demo的源代码

这是关于Android中3.0之后引入的Fragment使用的Demo示例。可以参考 客: blog.csdn.net/linmiansheng 中对应的文章

2014-06-05

LoaderDemo源代码

Android学习小Demo(19)利用Loader来显示短信

2014-05-14

Android JNI demo

参考:http://blog.csdn.net/linmiansheng/article/details/25113461

2014-05-06

Volley Demo 2 源代码

参考: Android中关于Volley的使用(八)缓存机制的深入认识

2014-04-11

Fragment和ViewPager使用Demo源代码

请参考: Android学习小Demo(17)关于ViewPager和Fragment的使用 http://blog.csdn.net/linmiansheng/article/details/23282797

2014-04-09

导入已有数据的sqlitedb demo源代码

请参考:Android学习小Demo(16)Android中使用已存在数据的SqliteDatabase http://blog.csdn.net/linmiansheng/article/details/22685725

2014-03-31

Content Observer Demo 源代码

请参考: http://blog.csdn.net/linmiansheng/article/details/21043047

2014-03-11

volley demo 源代码 1

请参考:Android中关于Volley的使用(一)加载图片 http://blog.csdn.net/linmiansheng/article/details/20496441 Android中关于Volley的使用(二)加载Json数据 http://blog.csdn.net/linmiansheng/article/details/20956309

2014-03-10

volley jar包

android的volley jar 包

2014-03-04

TodoList源代码

参考:Android学习小Demo(10)ToDoList的改进版之ViewPager显示多个图片

2014-02-27

SqliteDemo源代码

请参考: http://blog.csdn.net/linmiansheng/article/details/19096067 Android学习小Demo(8)SQLiteDatabase的使用

2014-02-12

sharedpreference使用demo源代码

请参考: Android学习小Demo(7)SharedPreference的使用

2014-02-09

图片折叠效果的实现Demo源代码

参考:http://blog.csdn.net/linmiansheng/article/details/18896445

2014-02-01

矩阵Matrix实现推拉门效果的Demo源代码

请参考 :Android学习小Demo(5)结合Matrix跟Porperty Animatin 实现推拉门效果

2014-02-01

NineoldAndroids jar 包

Nineoldandroids包,由Github大牛jake wharton 开发,令Property Animation可以支持到1.x

2014-01-26

沿着贝塞尔曲线移动的按钮

请参考:Android动画学习Demo(3) 沿着贝塞尔曲线移动的Property Animation

2014-01-26

Property Animation Demo 源代码

请参考 Android动画学习Demo(2) 关于Property Animation的用法及总结

2014-01-23

Animation Demo 源代码 (更新版)

参考 Android动画学习Demo(1) 关于ViewAnimation的用法及总结

2014-01-22

View Animation Demo 源代码

参考 View Animation 效果

2014-01-22

贝塞尔曲线源码

请参考 Android学习小Demo(4)贝塞尔曲线跟翻页效果

2014-01-21

Android 音乐播放器源码

Android 音乐播放器,实现递归扫描SD根目录歌曲文件,切换播放模式、查看歌曲详细信息等基本功能,源码打包给大家,需要的下载哈 参考:http://blog.csdn.net/linmiansheng/article/details/18455593

2014-01-18

Android音乐播放器源码

请参考: http://blog.csdn.net/linmiansheng/article/details/18455593

2014-01-18

ApiDemoStudy

里面有三个小Demo 1)ApiDemo里面的Transition3D效果 2)自义义View和自定义ViewGroup 3) 利用HorizontalScrollView 去实现水平滚动的效果

2014-01-13

空空如也

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

TA关注的人

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