- 博客(187)
- 资源 (48)
- 问答 (1)
- 收藏
- 关注
原创 Android二维码功能实现,在程序内嵌入ZXing项目
最近二维码真是越来越火了,随便电视上、网络上、商场里,到处都是二维码。而内嵌二维码扫描功能的软件也越来越多,QQ、微信、UC浏览器等等应用都可以对着二维码扫一扫,感觉我们自己的应用里不加上二维码扫描功能,都跟不上时代潮流了。所以今天我就将带着大家一起,在我们自己的程序里加入二维码扫描的功能。不过,二维码功能如果真要做起来还是非常复杂的,从零开始实现不太现实,比较好的做法就是借助现有的开源项目。目前在二维码这一领域名气最大的开源项目就是ZXing了(Zebra Crossing),它提供了多个平台的二维码扫
2013-08-09 08:34:16 48639 56
原创 Android照片墙应用实现,再多的图片也不怕崩溃
照片墙这种功能现在应该算是挺常见了,在很多应用中你都可以经常看到照片墙的身影。它的设计思路其实也非常简单,用一个GridView控件当作“墙”,然后随着GridView的滚动将一张张照片贴在“墙”上,这些照片可以是手机本地中存储的,也可以是从网上下载的。制作类似于这种的功能的应用,有一个非常重要的问题需要考虑,就是图片资源何时应该释放。因为随着GridView的滚动,加载的图片可能会越来越多,如果没有一种合理的机制对图片进行释放,那么当图片达到一定上限时,程序就必然会崩溃。今天我们照片墙应用的实现,重点也
2013-08-02 08:23:32 150544 194
原创 Ruby设计模式透析之 —— 适配器(Adapter)
此为Java设计模式透析的拷贝版,专门为Ruby爱好者提供的,不熟悉Ruby语法的朋友请转阅 :Java设计模式透析之 —— 适配器(Adapter) 今天一大早,你的leader就匆匆忙忙跑过来找到你:“快,快,紧急任务!最近ChinaJoy马上就要开始了,老板要求提供一种直观的方式,可以查看到我们新上线的游戏中每个服的在线人数。”你看了看日期,不是吧!这哪里是马上要开始了,分明是已经开始了!这怎么可能来得及呢?“没关系的。”你的leader安慰你道:“功能其实很简单的,接口都已经提供好了,你只需
2013-07-25 21:42:53 11541 5
原创 Java设计模式透析之 —— 适配器(Adapter)
今天一大早,你的leader就匆匆忙忙跑过来找到你:“快,快,紧急任务!最近ChinaJoy马上就要开始了,老板要求提供一种直观的方式,可以查看到我们新上线的游戏中每个服的在线人数。”你看了看日期,不是吧!这哪里是马上要开始了,分明是已经开始了!这怎么可能来得及呢?“没关系的。”你的leader安慰你道:“功能其实很简单的,接口都已经提供好了,你只需要调用一下就行了。”好吧,你勉为其难地接受了,对于这种突如其来的新需求,你早已习惯
2013-07-25 09:01:06 46305 116
翻译 Android高效加载大图、多图解决方案,有效避免程序OOM
我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可以通过下面的代码看出每个应用程序最高可用内存是多少
2013-07-19 08:33:32 255863 160
原创 Android下拉刷新完全解析,教你如何一分钟实现下拉刷新功能
最近项目中需要用到ListView下拉刷新的功能,一开始想图省事,在网上直接找一个现成的,可是尝试了网上多个版本的下拉刷新之后发现效果都不怎么理想。有些是因为功能不完整或有Bug,有些是因为使用起来太复杂,十全十美的还真没找到。因此我也是放弃了在网上找现成代码的想法,自己花功夫实现了一套非常简单的下拉刷新方案,现在拿出来和大家分享一下。相信在阅读完本篇文章之后,大家都可以在自己的项目中一分钟引入下拉刷新功能。首先讲一下实现原理
2013-07-12 08:34:13 157315 269
原创 Android事件分发机制完全解析,带你从源码的角度彻底理解(下)
记得在前面的文章中,我带大家一起从源码的角度分析了Android中View的事件分发机制,相信阅读过的朋友对View的事件分发已经有比较深刻的理解了。还未阅读过的朋友,请先参考 Android事件分发机制完全解析,带你从源码的角度彻底理解(上) 。那么今天我们将继续上次未完成的话题,从源码的角度分析ViewGruop的事件分发。
2013-07-05 08:26:56 144919 203
原创 Ruby设计模式透析之 —— 组合(Composite)
此为Java设计模式透析的拷贝版,专门为Ruby爱好者提供的,不熟悉Ruby语法的朋友请转阅 :Java设计模式透析之 —— 组合(Composite) 听说你们公司最近新推出了一款电子书阅读应用,市场反应很不错,应用里还有图书商城,用户可以在其中随意选购自己喜欢的书籍。你们公司也是对此项目高度重视,加大了投入力度,决定给此应用再增加点功能。好吧,你也知道你是逃不过此劫了,没过多久你的leader就找到了你。他告诉你目前的应用对每本书的浏览量和销售量做了统计,但现在想增加对每个书籍分类的浏览量和销售量
2013-06-28 08:35:25 11291 2
原创 Java设计模式透析之 —— 组合(Composite)
听说你们公司最近新推出了一款电子书阅读应用,市场反应很不错,应用里还有图书商城,用户可以在其中随意选购自己喜欢的书籍。你们公司也是对此项目高度重视,加大了投入力度,决定给此应用再增加点功能。好吧,你也知道你是逃不过此劫了,没过多久你的leader就找到了你。他告诉你目前的应用对每本书的浏览量和销售量做了统计,但现在想增加对每个书籍分类的浏览量和销售量以及所有书籍总的浏览量和销售量做统计的功能,希望你可以来完成这项功能
2013-06-27 08:37:26 26698 27
原创 Android事件分发机制完全解析,带你从源码的角度彻底理解(上)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9097463 其实我一直准备写一篇关于Android事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了Android事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView...
2013-06-20 08:30:59 415448 380
原创 Android系统联系人全特效实现(下),字母表快速滚动
在上一篇文章中,我和大家一起实现了类似于Android系统联系人的分组导航和挤压动画功能,不过既然文章名叫做《Android系统联系人全特效实现》,那么没有快速滚动功能显然是称不上"全"的。因此本篇文章我将带领大家在上篇文章的代码基础上改进,加入快速滚动功能。如果还没有看过我上一篇文章,请抓紧去阅读一下 Android系统联系人全特效实现(上),分组导航和挤压动画 。其实ListView本身是有一个快速滚动属性的
2013-06-13 08:24:29 44858 57
原创 Android系统联系人全特效实现(上),分组导航和挤压动画
记得在我刚接触Android的时候对系统联系人中的特效很感兴趣,它会根据手机中联系人姓氏的首字母进行分组,并在界面的最顶端始终显示一个当前的分组。最让我感兴趣的是,当后一个分组和前一个分组相碰时,会产生一个上顶的挤压动画。那个时候我思考了各种方法想去实现这种特效,可是限于功夫不到家,都未能成功。如今两年多过去了,自己也成长了很多,再回头去想想这个功能,突然发现已经有了思路,于是立刻记录下来与大家分享
2013-06-08 08:20:30 46202 57
原创 Ruby设计模式透析之 —— 策略(Strategy)
此为Java设计模式透析的拷贝版,专门为Ruby爱好者提供的,不熟悉Ruby语法的朋友请转阅 :Java设计模式透析之 —— 策略(Strategy) 今天你的leader兴致冲冲地找到你,希望你可以帮他一个小忙,他现在急着要去开会。要帮什么忙呢?你很好奇。他对你说,当前你们项目的数据库中有一张用户信息表,里面存放了很用户的数据,现在需要完成一个选择性查询用户信息的功能。他说会传递给你一个包含许多用户名的数组,你需要根据这些用户名把他们相应的数据都给查出来
2013-05-31 00:23:47 7692
原创 Java设计模式透析之 —— 策略(Strategy)
今天你的leader兴致冲冲地找到你,希望你可以帮他一个小忙,他现在急着要去开会。要帮什么忙呢?你很好奇。他对你说,当前你们项目的数据库中有一张用户信息表,里面存放了很用户的数据,现在需要完成一个选择性查询用户信息的功能。他说会传递给你一个包含许多用户名的数组,你需要根据这些用户名把他们相应的数据都给查出来。这个功能很简单的嘛,你爽快地答应了。由于你们项目使用的是MySQL数据库,你很快地写出了如下代码
2013-05-30 08:17:50 33514 47
原创 巧用Android网络通信技术,在网络上直接传输对象
要做一个优秀的Android应用,使用到网络通信技术是必不可少的,很难想象一款没有网络交互的软件最终能发展得多成功。那么我们来看一下,一般Android应用程序里都是怎么实现网络交互的,这里拿一个Boook对象为例,首先在手机端生成一个Book对象,里面包含书名、作者、价格等数据。为了要将这些数据发送到服务器端,我们要从Book对象中把数据取出,然后组装成XML格式的字符串。接着通过网络API,把组装好的XML字符串发送到服务器端。服务器端接到了客户端发来的XML字符串,就要对该XML进行解析。然后把解析出
2013-05-25 07:57:01 34157 30
原创 Android手机平板两不误,使用Fragment实现兼容手机和平板的程序
记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。当时项目组定的方案是,制作两个版本的App,一个手机版,一个Pad版。由于当时手机版的主体功能已经做的差不多了,所以Pad版基本上就是把手机版的代码完全拷过来,然后再根据平板的特性部分稍作修改就好了。但是,从此以后我们就非常苦逼了。每次要添加什么新功能,同样的代码要写两遍。每次要修复任何bug
2013-05-14 08:50:47 68819 103
原创 Android Fragment完全解析,关于碎片你所需知道的一切
我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后每个"小Activity"又可以拥有自己的布局。因此,我们今天的主角Fragment登场了
2013-05-07 09:33:45 317353 205
原创 Ruby设计模式透析之 —— 单例(Singleton)
此为Java设计模式透析的拷贝版,专门为Ruby爱好者提供的,不熟悉Ruby语法的朋友请转阅 :Java设计模式透析之 —— 单例(Singleton) 写软件的时候经常需要用到打印日志功能,可以帮助你调试和定位问题,项目上线后还可以帮助你分析数据,但是Ruby原生带有的puts方法却很少在真正的项目开发中使用。为什么作为Ruby新手神器的puts,到了真正项目开发当中会被唾弃呢?其实只要细细分析,你就会发现它的很多弊端。比如不可控制,所有的日志都会在项目上线后照常打印,从而降低运行效率;又或者不能将
2013-04-30 09:27:56 18857 1
原创 Java设计模式透析之 —— 单例(Singleton)
写软件的时候经常需要用到打印日志功能,可以帮助你调试和定位问题,项目上线后还可以帮助你分析数据。但是Java原生带有的System.out.println()方法却很少在真正的项目开发中使用,甚至像findbugs等代码检查工具还会认为使用System.out.println()是一个bug。为什么作为Java新手神器的System.out.println(),到了真正项目开发当中会被唾弃呢?其实只要细细分析,你就会发现它的很多弊端。比如不可控制,所有的日志都会在项目上线后照常打印,从而降低运行效率;又或
2013-04-29 11:36:44 31067 75
翻译 Android官方提供的支持不同屏幕大小的全部方法
本文将告诉你如何让你的应用程序支持各种不同屏幕大小,主要通过以下几种办法:让你的布局能充分的自适应屏幕,根据屏幕的配置来加载合适的UI布局,确保正确的布局应用在正确的设备屏幕上,提供可以根据屏幕大小自动伸缩的图片。为了确保你的布局能够自适应各种不同屏幕大小,你应该在布局的视图中使用"wrap_content"和"match_parent"来确定它的宽和高。如果你使用了"wrap_content",相应视图的宽和高就会被设定成刚好能够包含视图中内容的最小值。而如果你使用了"match_parent"
2013-04-22 11:23:48 97059 36
原创 Android图片滚动,加入自动播放功能,使用自定义属性实现,霸气十足!
大家好,记得上次我带着大家一起实现了一个类似与淘宝客户端中带有的图片滚动播放器的效果,但是在做完了之后,发现忘了加入图片自动播放的功能(或许是我有意忘记加的.....),结果图片只能通过手指滑动来播放。于是今天我将再次带领大家,添加上之前遗漏的功能,让我们的图片播放器更加完善。这次的程序开发将完全基于上一次的代码,如果有朋友还未看过上篇文章,请先阅读 Android实现图片滚动控件,含页签功能,让你的应用像淘宝一样炫起来 。既然是要加入自动播放的功能
2013-04-13 16:48:39 43693 70
原创 Android实现图片滚动控件,含页签功能,让你的应用像淘宝一样炫起来
如果你是网购达人,你的手机上一定少不了淘宝客户端。关注特效的人一定都会发现,淘宝不管是网站还是手机客户端,主页上都会有一个图片滚动播放器,上面展示一些它推荐的商品。这个几乎可以用淘宝来冠名的功能,看起来还是挺炫的,我们今天就来实现一下。实现原理其实还是之前那篇文章Android滑动菜单特效实现,仿人人客户端侧滑效果,史上最简单的侧滑实现 ,算是以那个原理为基础的另外一个变种。正所谓一通百通,真正掌握一种方法之后,就可以使用这个方法变换出各种不通的效果
2013-04-07 23:07:00 55758 56
原创 Android滑动菜单框架完全解析,教你如何一分钟实现滑动菜单特效
之前我向大家介绍了史上最简单的滑动菜单的实现方式,相信大家都还记得。如果忘记了其中的实现原理或者还没看过的朋友,请先去看一遍之前的文章 Android滑动菜单特效实现,仿人人客户端侧滑效果,史上最简单的侧滑实现 ,因为我们今天要实现的滑动菜单框架也是基于同样的原理的。之前的文章中在最后也提到了,如果是你的应用程序中有很多个Activity都需要加入滑动菜单的功能,那么每个Activity都要写上百行的代码才能实现效果,再简单的滑动菜单实现方案也没用。因此我们今天要实现一个滑动菜单的框架,然后在任何
2013-04-02 11:19:46 105727 243
原创 Java设计模式透析之 —— 模板方法(Template Method)
今天你还是像往常一样来上班,一如既往地开始了你的编程工作。项目经理告诉你,今天想在服务器端增加一个新功能,希望写一个方法,能对Book对象进行处理,将Book对象的所有字段以XML格式进行包装,这样以后可以方便与客户端进行交互。并且在包装开始前和结束后要打印日志,这样方便调试和问题定位。没问题!你觉得这个功能简直是小菜一碟,非常自信地开始写起代码
2013-03-31 21:33:26 25928 66
原创 Ruby设计模式透析之 —— 模板方法(Template Method)
此为Java设计模式透析的拷贝版,专门为Ruby爱好者提供的,不熟悉Ruby语法的朋友请转阅 :Java设计模式透析之 —— 模版方法(Template Method) 今天你还是像往常一样来上班,一如既往地开始了你的编程工作。项目经理告诉你,今天想在服务器端增加一个新功能,希望写一个方法,能对Book对象进行处理,将Book对象的所有字段以XML格式进行包装,这样以后可以方便与客户端进行交互。并且在包装开始前和结束后要打印日志,这样方便调试和问题定位。没问题!你觉得这个功能简直是小菜一碟,非常自信
2013-03-31 21:33:03 12697 1
原创 Android滑动菜单特效实现,仿人人客户端侧滑效果,史上最简单的侧滑实现
人人客户端有一个特效还是挺吸引人的,在主界面手指向右滑动,就可以将菜单展示出来,而主界面会被隐藏大部分,但是仍有左侧的一小部分同菜单一起展示。据说人人客户端的这个特效是从facebook客户端模仿来的,至于facebook是不是又从其它地方模仿来的就不得而知了。好,今天我们就一起来实现这个效果,总之我第一次看到这个特效是在人人客户端看到的,我也就主观性地认为我是在模仿人人客户端的特效了。虽然现在网上类似这种效果的实现也非常多,可是我发现实现方案大都非常复杂,并不容易理解。但其实这种效果并不难实现,因此我
2013-03-25 14:45:21 92813 176
原创 Android桌面悬浮窗效果实现,仿360手机卫士悬浮窗效果
大家好,今天给大家带来一个仿360手机卫士悬浮窗效果的教程,在开始之前请允许我说几句不相干的废话。不知不觉我发现自己接触Android已有近三个年头了,期间各种的成长少不了各位高手的帮助,总是有很多高手喜欢把自己的经验写在网上,供大家来学习,我也是从中受惠了很多,在此我深表感谢。可是我发现我却从来没有将自己平时的一些心得拿出来与大家分享,共同学习,太没有奉献精神了。于是我痛定思痛,决定从今天开始写博客,希望可以指点在我后面的开发者,更快地进入Android开发者的行列当中。好了,废话就说这么多,下面开始
2013-03-19 17:21:43 161221 219
《第一行代码——Android》试读
2014-08-13
Android ActionBar应用实战,高仿微信主界面的设计实例完整源码
2014-07-02
Android高级图片滚动控件,3D版的图片轮播器Demo
2014-03-04
Android桌面悬浮窗进阶,QQ手机管家小火箭效果实现Demo
2013-12-29
Android Fragment应用实战Demo,向ActivityGroup说再见 源码程序
2013-11-19
Android双向滑动菜单带按钮版
2013-11-15
Android照片墙加强版,使用ViewPager实现画廊效果Demo
2013-11-13
Android PowerImageView实现Demo
2013-10-23
Android数据库安全解决方案,使用SQLCipher Demo
2013-10-17
Android 3D滑动菜单完全解析,实现推拉门式的立体特效Demo
2013-09-29
Android中轴旋转特效实现,制作别样的图片浏览器
2013-09-19
Android多点触控技术实战,对图片进行缩放和移动Demo
2013-09-11
Android瀑布流照片墙实现,体验不规则排列的美感Demo
2013-09-05
Android瀑布流照片墙实现,体验不规则排列的美感
2013-09-04
Android双向滑动菜单完全解析,教你如何一分钟实现双向滑动特效demo
2013-08-29
Android滑动菜单框架Demo修正版
2013-08-21
Android二维码扫描Demo 程序源码
2013-08-08
Android照片墙应用实现Demo
2013-07-31
Android教你如何一分钟实现下拉刷新功能项目完整实例代码
2013-07-11
Android系统联系人全特效实现,字母表快速滚动
2013-06-12
Android系统联系人全特效实现,分组导航和挤压动画demo
2013-06-06
巧用Android网络通信技术,在网络上直接传输对象demo
2013-05-23
Android使用Fragment实现兼容手机和平板的程序
2013-05-13
Android使用Fragment实现兼容手机和平板的程序demo
2013-05-12
Android图片滚动,加入自动播放功能,使用自定义属性实现,霸气十足demo
2013-04-13
Android滑动菜单框架完全解析,加入点击未隐藏部分回到主界面的功能
2013-04-11
Android实现图片滚动控件,含页签功能demo
2013-04-07
Android滑动菜单框架完全解析,教你如何一分钟实现滑动菜单特效demo
2013-04-02
Android指纹认证Demo源码
2018-08-20
Android 8.0系统通知栏适配Demo
2018-04-14
Android端弹幕效果实现
2016-10-16
仿360手机助手秒装和智能安装功能源码
2015-12-13
瀑布流ListView源码
2015-10-06
Android照片结合LruCache和DiskLruCache Demo源码程序
2014-08-14
Android照片墙完整版Demo
2014-08-11
请教Rails上面图片和css加载有时不成功,是为什么呀?
2011-06-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人