自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

持剑

深度,想法,执行力

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

原创 Android学习小Demo(16)Android中使用已存在数据的SqliteDatabase

在Android中使用数据库,在一些情况下,需要导进一个已经有数据的数据库,然后在程序中去调用它,来实现我们的功能。比如在一个查询信用卡归属银行的小demo中,在输入框输入信用卡的前6位号码(这6位号码决定了信用卡的归属银行),点击查询按钮,就可以将其对应的银行给显示出来。下面我们来看看,程序中是如何实现这个功能的。1)Asset文件夹在Asset文件夹下面放上我们的数据库:...2)创建一个CreditCardDb类。在这个类中,我们要实现以下几个功能:2.1)要将数据库从assets

2014-03-31 21:58:47 2027

原创 Android中关于Volley的使用(七)认识 NetworkDispatcher 和 BasicNetwork

网络线程(NetworkDispatcher)主要做了几件事情:1)调用 mQueue的take()方法从队列中获取请求,如果没有请求,则一直阻塞在那里等待,直到队列中有新的请求到来。2)判断请求有没有被取消,如果被取消,则重新获取请求。3)调用Network对象将请求发送到网络中,并返回一个 NetworkResponse对象。4)调用请求的pareseNetworkResonse方法,将NetworkResponse对象解析成相对应的Response对象。5)判断请求是否需要缓存,如果需要缓存

2014-03-31 11:44:08 4926 1

原创 Android中关于Volley的使用(六)认识 CacheDispatcher

缓存线程(CacheDispatcher)主要做了几件事情:1)初始化本地缓存2)开始一个无限的循环,调用 mCacheQueue的take方法,来获得一个请求,而mCacheQueue是一个BlockingQueue,也就是说,当队列中没有请求的时候,take方法就会一直阻塞在这里,等待队列中的请求,而一旦队列中有新的请求进来了,那么它就会马上执行下去。3)判断请求是否已经取消,如果已经被取消了,则不需要再走下去。4)根据请求的CacheKey去缓存中寻找相对应的记录,如果找不到对应的记录,或者对

2014-03-31 10:58:15 4013

原创 LeetCode(一)关于GrayCode的实现

在LeetCode上面有一道题,是关于Gray Code的实现的。GrayCode是这样一种编码:1 位Gray Code :012 位Gray Code:先添加一个镜像,如下:0110然后,在原来的编码前面添加“0”,在镜像码前面添加“1”,如下:00011110而从2位变化到3位的Gray Code的实现方式跟从1位变化到2位的过程是一样的, 都是先添加镜

2014-03-21 23:02:36 1641

原创 Android中关于Volley的使用(五)从RequestQueue开始来深入认识Volley

在前面的几篇文章中,我们学习了如何用Volley去网络加载JSON数据,如何利用ImageRequest和NetworkImageView去网络加载数据,而关于Volley的使用,我们都是从下面一行代码开始的:Volley.newRequestQueue(this);这是Volley类创建了一个RequestQueue,而关于Volley的一切就是从这个时候开始的,我们就深入地学习一下在这个方法后面到底有着什么样的实现吧。我们来看看Volley类的实现:...Volley类只有两个方法,而主要

2014-03-21 00:01:54 9598 4

原创 Android学习小Demo(15)一个自定义AlertDialog的实现

在Android的应用中,很多时候,都会利用到 AlertDialog 来弹出信息,或者让用户进行选择,或者告知用户某些信息,而系统自带的背景效果,一般不能够满足需求,所以很多时候,就会存在自定义 AlertDialog 的需求。其实不仅是AlertDialog,为了完善一款应用,很多控件都需要自定义,比如前面文章中提到过的EditText 等。今天就讲一下如何在Android中自定义 AlertDialog,请先看下面的效果图:...在这个style中,a)会将Dialog的windowBackg

2014-03-18 00:03:57 3337

原创 Android学习小Demo(14)Android中关于PopupWindow的使用

在一些场景中,我们希望能够点击按钮, 然后弹出一个菜单,而这个菜单是显示在屏幕的中央的,那么在Android中可以通过PopupWindow来实现这个效果。...如上图中,我们点击“添加图片”按钮,然后在屏幕中央就弹出了一个菜单,可供我们选择“照相”,还是到“图库”中去选择。下面我们来看一下具体实现:...首先利用 LayoutInflater 将我们的布局 pw_take_photo.xml 给解析出来,然后调用 PopupWindow的构造函数,将 popupView 传给它,并同时指定宽度是

2014-03-17 00:03:23 3704

原创 Android中关于Volley的使用(四)利用NetworkImageView来加载图片

在使用Volley来从网络获取图片的时候,我们前面介绍了ImageRequest的使用,而其实Volley还提供了一个NetworkImageView类。利用这个类,我们可以更有效率地去从网络去获取图片,因为它里面帮我们多设置了一个缓存,帮我们自己去处理请求的队列。NetworkImageView类的具体使用方式如下:1)在XML中定义: <FrameLayout

2014-03-16 00:01:11 13139 4

原创 Android中关于Volley的使用(三)认识Volley的架构

首先,我们要先了解一下Volley的架构,简单地来说,就是三层:1)队列:将请求添加到Queue中2)缓存:在Cache中查找有没有缓存这个请求要的数据,2.1)有,请求如果过期了,到第 3)步,如果没有过期,直接返回一个Response。2.2)没有,到第 3)步3)网络:通过传进来的url 来发送请求,到网络中获取数据,然后返回一个Response,并判断是否要存到Cache中。结合上图,我们来简单地先说一下Volley的流程是怎么样的。第一步:通过Volley.newRequestQue

2014-03-14 13:43:43 3851 1

原创 算法学习(四)冒泡排序

冒泡排序的原理是:1)从0开始,比较相邻两个元素的大小,如果是按从小到大排序的话,则将大的元素往后往,反之,则将小的元素往后放,这样经过一轮的比较,就会将最大或者最小的数放到数组的最后面了。2)第二轮开始,还是从0开始,但是这一次呢,就不需要比较最后面那个元素了,因为它已经是最大了(这其实跟堆排序,找出最大数或者最小数,放到数组后端是一样的道理),假设数组长度为N,则第二轮只需要比较N-1个元素了。3)这样,每一轮结束,都会有一个当前最大素放到最后面,那么到第N-1轮的时候,其实就只剩一个元素了,于是

2014-03-13 00:03:08 1401

原创 Android学习小Demo(13)Android中关于ContentObserver的使用

在一些应用上,比如手机银行,QQ,微信等,很多时候我们都需要通过发送验证码到手机上,然后把验证码填上去,然后才能成功地继续去做下面一步事情。而如果每次我们都要离开当前界面,然后去查收短信,记住验证码,然后再回来输入到控件中,这感觉就会很麻烦,用户体验就会很差,而像微信等一些应用,则会在手机接到短信后,将信息中的验证码给抽出来,帮我们将其填到对应的控件中,多方便,对吧。这个功能就是通过ContentObserver来实现的。顾名思义,Content Observer,就是内容监听,它实现的功能就是对特定的

2014-03-11 23:59:58 2687 1

原创 Android中关于Volley的使用(二)加载Json数据

前面一篇关于Volley的文章中,我们学习了如何利用ImageRequest去网络中加载图片,那么今天我们就来学习一下如何利用volley去网络中加载Json格式数据,并将其展示在一个ListView上。1)数据源:private static final String WEATHER_LINK = "http://www.weather.com.cn/data/sk/101280101.html";这是由中国天气网提供的关于某个城市的天气预告的Json数据,大家直接点击链接进去 http://ww

2014-03-11 00:00:21 8714 13

原创 Android学习小Demo(12)TodoList实现ListView的分组实现

很多情况下, 我们想要ListView上面展示的东西是可以分组的,比如联系人列表,国家列表啊,这样看起来数据的展现比较有层次感,而且也有助于我们快速定位到某一个具体的条目上,具体效果请看下图:这是前面TodoList小demo的MainActivity,主要是来展现用户添加的任务的,在原来的基础上添加了分组的效果。...首先我们定义了下面两个数组,并且需要在构造的时候初始化它们: private int[] sectionIndices; private String[] sectionHead

2014-03-08 17:37:11 8697 24

原创 如何导进开源库StickyListHeaders

这一篇文章是为了告诉大家怎么导进StickyListHeaders开源库,并在项目中利用它的功能。其实跟我们使用v7 support library是一样的,大家也可以参考:https://developer.android.com/tools/support-library/setup.html#libs-without-res1)先去 https://github.

2014-03-08 17:36:43 6211 2

原创 Android学习小Demo(11)一个显示行线的自定义EditText

今天在处理一个EditText的时候,想着把EditText做成像一本作业本上的纸一样,每一行都可以由线条隔开,具体效果如下:1)最开始的思路一开始的想法是很简单的,找出每一行的高度,然后一行一行地画线不就好了吗,代码如下: viewHeight = getMeasuredHeight(); viewWidth = getMeasuredWidth();

2014-03-07 00:11:58 5284 1

原创 Android中关于Volley的使用(一)加载图片

在上面,我们可以看到,在ImageRequest的构造函数中,我们就可以直接将一些关于Bitmap的参数给传进去了,比如长宽等信息,然后在其返回的Response.Listener中获得返回的结果,就是一个Bitmap了,并在onResponse函数中对ImageView进行设置,最后将其添加到mQueue中。1)定义一个RequestQueue,如下:2)在OnCreate方法中对其进行初始化,this其实就是当前Activity,是一个Context类:3)创建ImageRequest对象,并将其

2014-03-05 00:32:08 6563 4

原创 Android中关于Volley的使用(零)Android中下载编译Volley

1)通过 git 下载 volley 源码,如下(我在这里是在cygwin里面去下载的):git clone https://android.googlesource.com/platform/frameworks/volley...2)在Window下用cmd命令进入到 volley目录,然后运行 "android update project -p .",后面的点表示当前目录 如下:...3)最后再用ant来编译成jar包就行,命令是"ant jar"。

2014-03-04 10:27:15 6675 6

原创 Android中从源码分析关于AsyncTask的使用

Android在框架层提供了异步任务类,AysncTask,用于执行后台任务,并将执行结果更新到UI线程。为什么要用异步任务呢?这是因为如果某个任务太耗时间的话,会阻塞UI主线程,而我们知道UI线程如果阻塞5秒的话,就会发生ANR(Application No Response)错误 ,就算没有发生,主界面上看起来也会卡卡的,这显然用户体验就不太好了。而AsyncTask类则在不影响UI线程的情况下,另起子线程去做那些耗时比较久的任务,比如我们在TodoList中去读取图片这种情况,然后将处理后的结果再更

2014-03-03 00:06:12 2725 1

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关注的人

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