- 博客(90)
- 资源 (10)
- 收藏
- 关注

原创 最佳实践之 Android代码规范
命名规范包命名规范采用反域名命名规则,包名全部小写,连续的单词只是简单地连接起来,不使用下划线,一级包名为com,二级包名为xxx(可以是公司域名或者个人命名),三级包名根据应用进行命名,四级包名为模块名或层级名。如: com.isa.crm.activity | com.isa.crm.adapterJAVA类命名规范采用大驼峰式命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,UR
2015-04-08 17:28:53
2436
原创 Android 使用ColorMatrix改变图片颜色
ColorMatrix的颜色矩阵介绍颜色矩阵M是一个5*4的矩阵,在Android中,颜色矩阵M是以一维数组m=[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t]的方式进行存储的。如下图1: 图1 颜色矩阵M他通过RGBA四个通道来直接操作对应颜色,达到修改图像的效果。 第一行决定红色 R 第二行决定绿色 G 第三行决定蓝色 B 第四行决定
2015-10-17 21:27:14
7478
原创 Android 从外部网页拉起跳转到App
业务场景当需要从外部第三方网页中通过点击某个链接或按钮启动App应用程序。实现新建demo工程,并实现一个Activity,用来接收从外部跳转传入的信息。代码如下: public class MainActivity extends Activity { private TextView tv_content; @Override protected void onCr
2015-10-12 23:39:40
10848
1
原创 Android学习之 Scroller的介绍与使用
类概述Android里Scroller类是为了实现View平滑滚动的一个Helper类。通常在自定义的View时使用,在View中定义一个私有成员mScroller = new Scroller(context)。设置mScroller滚动的位置时,并不会导致View的滚动,通常是用mScroller*记录/计算View滚动的位置*,再重写View的computeScroll(),调用View的sc
2015-05-27 00:13:23
4597
原创 工具使用之Android Studio快捷键-mac版
最近给自己添置了一台mac,也算是完成了多年前的一个小愿望。做为Android开发者的我于是搭载了Android Studio 1.1正式版做为了我的安卓开发工具。在window上eclipse我可以畅快的玩耍,idea和as也可以友好的玩耍。但是对于刚接触Mac的我,在as快捷键的使用上,我感觉整个人都不好啦。于是又花了些时间整理了一下as在Mac上我常用的快捷键。关于window上idea和as
2015-04-28 00:19:30
34074
2
原创 面试小结-那些求职路上的经验分享与感受
世界那么大 我想去看看世界那么大,我也想去看看。这个月,小吕完成了一次工作上的跳槽。在这种全民跳槽的月份、小吕的心情显的稍有些浮躁、工作上也怠慢了很多(虽然这个月的工作量也不大)。没有心思钻研技术、也不能好好静下心来学习。我不喜欢现在这状态的我。上完这周的班,站好最后几天岗,我也将滚蛋啦!所幸的是,小吕也成功拿到了一家一直向往的互联网公司的offer。小吕觉得机会来的特别的珍惜、因为我是一个没有高学
2015-04-23 11:24:55
3566
2
原创 Android系统 小米/三星/索尼 应用启动图标未读消息数(BadgeNumber)动态提醒
在Android手机上,如QQ、微信当有未读消息的时候、我们可以看到在应用的启动图标的右上角会有一个红色圈圈、且圈圈里会动态显示未读消息的数目,如下图显示: 那么该功能是怎么实现的呢? 在万能的互联网搜索和翻阅了大量相关资料、也请教了一些技术群里的大咖们。从他们那里我获知、提取了一些关键词:第三方控件BadgeView(实现应用内的数字提醒)、快捷图标、Launcher、反射。 零零碎碎的花费
2015-03-17 16:50:58
15994
2
原创 JAVA设计模式之 装饰模式【Decorator Pattern】
一、概述 动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。装饰模式是一种对象结构型模式。装饰模式是一种用于替代继承的技术,使用对象之间的关联关系取代类之间的继承关系。在装饰模式中引入了装饰类,在装饰类中既可以调用待装饰的原有类的方法,还可以增加新的方法,以扩充原有类的功能。二、适用场景 装饰原有对象、在不改变原有对象的情况下扩展增强新功能/新特征.。当不能
2015-03-09 21:07:56
3208
原创 JAVA设计模式之 桥接模式【Bridge Pattern】
一、概述 将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式。二、适用场景 处理多维度变化。 业务场景:某功能为将数据库中的数据转换成多种文件格式,例如txt、xml、pdf等格式,同时需要支持多种不同类型的数据库的读取。便可使用桥接模式对其进行设计。 这里的维度有两个 分别为:不同的文件格式
2015-03-06 17:43:23
5108
原创 抓包工具之 Fiddler
一、Fiddler的基本介绍 Fiddler是最强大最好用、且免费的Web调试工具之一,我们通常使用他来监控客户端和服务器的http/https请求。也就是我们常说的抓包。二、Fiddler的使用简要介绍 [基于版本4.4.9.9] 1、下载安装Fiddler,下载地址: http://www.telerik.com/fiddler2、运行安装好的Fiddler、界面效果如下:
2015-03-03 12:28:19
3302
原创 Android性能调优工具之 TraceView
从1月份Google发布的16个关于性能优化的系列视频起,这段时间在各大社区都有看到很多优秀的关于优化系列的文章。有分析了性能产生的原因、有分享如何优化我们的应用、有介绍有哪些工具可以帮助我们检测性能问题。 其中 在关于一些系统性能调优工具里有介绍到工具之一:TraceView TraceView 是 Android 平台配备一个很好的性能分析的工具。它可以通过图形化
2015-02-05 23:57:50
2599
原创 《30天软件开发 告别瀑布拥抱敏捷》一书 读后总结
周四、发现旁边一同事在看一本名为《30天软件开发 告别瀑布拥抱敏捷》的书、“敏捷开发”这个词虽然我在很早就已获知,但是我也只是简简单单的认识到一个术语,并未去了解和认识什么是敏捷开发。也刚好趁上个月的项目刚好是采用敏捷开发的模式完成的。于是就向同事借了该书几天。在阅读该书内容的过程中并结合自身项目的参与经历,用对比的方式学习、认识和理解敏捷开发。 一、初试Scrum Scrum是一个
2015-02-01 12:12:10
3168
原创 工具使用之 adbWireless无线调试Android应用
今天巧遇这个工具:adbwireless.apk, 于是乎 试爽了一把,果然觉得是个不错的工具、可谓是相见恨晚。可以帮助Android开发的同事们实现手机无线调试应用程序。 对!你没有听错、如果你觉得用模拟器不爽、如果你还在依赖着USB线插在电脑上调试,那就试试这里介绍的神器吧!使用前提条件: 1、下载安装 adbWireless.apk 在手机上,免费下载链接
2015-01-22 10:52:26
5220
1
原创 Java进阶之 JDK动态代理与Cglib动态代理
一、动态代理概述: 与静态代理对照(关于静态代理的介绍 可以阅读上一篇:JAVA设计模式之 代理模式【Proxy Pattern】), 动态代理类的字节码是在程序运行时由Java反射机制动态生成。 注意: 1、AspectJ是采用编译时生成AOP代理类,具有更好的性能,但是需要使用特定的编译器进行处理 2、Spring AOP
2015-01-19 22:38:15
6957
1
原创 JAVA设计模式之 代理模式【Proxy Pattern】
一、概述 给某一个对象提供一个代理,并由代理对象来完成对原对象的访问。代理模式是一种对象结构型模式。二、适用场景 当无法直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口。三、UML类图 四、参与者 1、接口类:Subje
2015-01-10 16:15:56
3715
翻译 Android学习之 内存管理机制与应用内存优化
Random Access Memory(RAM)在任何软件开发环境中都是一个很宝贵的资源。这一点在物理内存通常很有限的移动操作系统上,显得尤为突出。尽管Android的Dalvik虚拟机扮演了常规的垃圾回收的角色,但这并不意味着你可以忽视app的内存分配与释放的时机与地点。于大多数apps来说,Dalvik的GC会自动把离开活动线程的对象进行回收。一、Android系统是如何管理内存的
2015-01-05 22:20:10
3662
原创 Android学习之 图解调用invalidate()和requestLayout()的过程
今天在微博上看到有位大神发的一微博: Android中View的生命周期,调用invalidate()和requestLayout()会触发哪些方法,一图道破天机。 该图确实一看就非常清晰、让人简单的了解View的生命周期,也可以帮助我们更好的去掌握 如何自定义view,于是乎 转记之。
2015-01-05 13:29:44
2213
原创 在奔跑的路上——我的2014年工作总结
一、奔跑的这一年 2014年即将进入尾声、又要开始我对这一年的工作总结啦,在正式进入2014年工作总结前 小吕还记忆犹新的记得当时在写2013年工作总结的情形,可见时间过的如此之快。 先回顾一下小吕在2013年工作总结中最后一段 "对2014年的展望" 内容如下: 2014年里 小吕的目标又完成的怎么样呢? 1、在2014年初 小吕找到了一份
2014-12-28 23:33:52
3074
9
原创 Java进阶之 如何自动生成代码
一、前言:为什么要有代码的自动生成? 对于这个问题 最简洁直接的回答就是:代替手动编写代码、提高工作效率。 什么样的场景和代码适合用自动生成这种方式呢? 做过Java服务端的朋友一定都知道代码中我们需要编写与数据库表映射的Java实体类(Entity)、需要编写与实体对应的DAO类(XxDao.java类中有包含对应实体的增、删、改、查基本操作)。在这些实体类中通
2014-12-27 15:43:16
11349
4
原创 JAVA设计模式之 备忘录模式【Memento Pattern】
一、概述 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以在以后将对象恢复至原先保存的状态。它是一种对象行为型模式。二、适用场景 1、类似于撤销功能的实现,保存一个对象在某一时间的部分状态或全部状态,当以后需要它时就可以恢复至先前的状态。 2、 对对象历史状态的封装、避免将对象的历史状态的实现细节暴露给外界。
2014-12-23 23:34:02
5758
翻译 Android学习之 属性动画<Property Animation>
property 动画系统是相当健壮的框架,它几乎可以动画显示任何对象。 你可以定义一个动画来定时改变任何对象的属性值,不论该对象是否在屏幕上显示。 property 动画将以一定的时间间隔修改属性值(对象中的字段值)。 要实现动画显示,你须指定对象的相应属性(比如对象的屏幕位置),以及动画时长、动画时间间隔。property 动画系统能让你设定以下动画要素:1.持续时间:指定动画的持
2014-12-10 22:34:26
2396
原创 JAVA设计模式之 中介者模式【Mediator Pattern】
一、概述 用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。二、适用场景 协调多个对象之间的交互。三、UML类图四、参与者1、Mediator(抽象中介者):它定义一个接口,该接口用于与各同
2014-12-02 22:22:07
4919
原创 JAVA设计模式之 迭代器模式【Iterator Pattern】
一、概述 提供一种方法来访问聚合对象(容器container),而不用暴露这个对象的内部细节。二、适用场景 1>遍历访问聚合对象中的元素,而无须暴露它的内容表示,将聚合对象的访问和内部数据的存储分离。使得访问聚合对象时无须了解其内部的实现细节。 2>需要为一个聚合对象提供多种遍历实现。三、UML类图四、参与者 1>Ite
2014-12-01 00:42:14
1839
原创 Android学习之 Manifest中meta-data扩展元素数据的配置与获取
在AndroidManifest.xml清单文件中 我们有时会看到如下类似的元素开始的配置内容:<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyBhBFOgVQclaa8p1JJeqaZHiCo2nfiyBBo" /><meta-data android
2014-11-29 00:57:37
23629
原创 JAVA设计模式之 职责链模式【Chain of Responsibility Pattern】
一、概述 避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。 核心在于引入一个抽象处理者类二、适用场景 请求的链式处理,多个对象可以处理同一请求、但是具体由哪个对象来处理由运行时系统根据条件判断确定。 如请假业务场景:
2014-11-26 00:41:47
3982
原创 Android学习之 WebView使用小结
这段时间基于项目需要 在开发中与WebView的接触比较多,前段时间关于HTML5规范尘埃落定的消息出现在各大IT社区头版上,更有人说:HTML5将颠覆原生App开发 虽然我不太认同这一点 但是关于HTML5+JS+CSS+Native的跨平台开发模式还是为很多企业节省了开发资源和成本、一定程度上提升了WebView的使用率和地位。网上关于HTML5规范定稿的一篇见解文章:ht
2014-11-20 20:18:42
5839
原创 JAVA设计模式之 命令模式【Command Pattern】
一、概述 命令模式可以将请求发送者和接收者完全解耦,发送者与接收者之间没有直接引用关系,发送请求的对象只需要知道如何发送请求,而不必知道如何完成请求。核心在于引入了命令类,通过命令类来降低发送者和接收者的耦合度,请求发送者只需指定一个命令对象,再通过命令对象来调用请求接收者的处理方法,命令模式是一种对象行为型模式。二、使用场景1>、系统要求请求发送者和接收者的解耦
2014-11-19 15:58:05
2483
原创 JAVA设计模式之 访问者模式【Visitor Pattern】
一、概述 访问者模式是一种较为复杂的行为型设计模式,它包含访问者和被访问元素两个主要组成部分,这些被访问的元素通常具有不同的类型,且不同的访问者可以对它们进行不同的访问操作。在使用访问者模式时,被访问元素通常不是单独存在的,它们存储在一个集合中,这个集合被称为“对象结构”,访问者通过遍历对象结构实现对其中存储的元素的逐个操作。访问者模式是一种对象行为型模式。二、适用场景
2014-11-15 22:21:32
5926
1
原创 JAVA设计模式之 状态模式【State Pattern】
一、概述 当系统中某个对象存在多个状态,这些状态之间可以进行转换,而且对象在不同状态下行为不相同时可以使用状态模式。状态模式将一个对象的状态从该对象中分离出来,封装到专门的状态类中,使得对象状态可以灵活变化。状态模式是一种对象行为型模式。二、适用场景 用于解决系统中复杂对象的多种状态转换以及不同状态下行为的封装问题。简单说就是处理对象的多种状态及其相互转换。
2014-11-12 23:48:35
3751
原创 Android学习之 Activity堆栈管理与控制
App程序中有很多Activity、你可以通俗的理解为把一个Activity看做是一个UI界面。在Andord系统中Activity是以堆栈的形式存在。堆栈中的根Activity就是应用程序的启动Activity。而堆栈中最上方的Activity则是当前运行的/用户正在操作的UI Activity。 也可以这样去理解:堆栈中保存的是Activity对象,如果一个应用中多次使用了一个Act
2014-11-08 00:45:45
11193
原创 JAVA设计模式之 原型模式【Prototype Pattern】
一、概述: 使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。简单的说就是对象的拷贝生成新的对象(对象的克隆),原型模式是一种对象创建型模式。二、使用场景: 创建新的对象可以通过对已有对象进行复制来获得,如果是相似对象,则只需对其成员变量稍作修改。三、UML结构图:四、参与者(1) Prototype(
2014-11-06 00:14:30
2744
原创 Android学习之 换肤功能模块的实现<二>
在上篇中 主要有学习到皮肤资源内置到应用程序中 的方式实现换肤的 基本思路,本篇将继续以上篇的思路学习 皮肤资源内置的方式实现换肤效果、但本篇侧重于应用中换肤功能的代码设计实现上!切换的皮肤资源位于assets下不同的皮肤资源文件夹中。 本篇demo程序的代码结构如下: 本篇实现换肤功能的代码设计 UML类图如下:本篇demo的换肤效果如下:
2014-10-11 23:02:00
3522
原创 Android学习之 换肤功能模块的实现<一>
软件换肤从功能上可以划分三种:1) 软件内置多个皮肤,不可由用户增加或修改;2) 官方提供皮肤供下载,用户可以使用下载的皮肤;3) 官方提供皮肤制作工具或方法,用户可自制皮肤。 软件换肤从实现上来可以划分二种:1) 皮肤内置到应用程序中;[这中实现相对比较简单]2) 皮肤资源与应用程序分离;
2014-09-26 00:45:31
2148
adbWireless无线调试安装包
2015-01-22
FreeMarkerTemplateDemo
2014-12-27
Android皮肤资源内置实现换肤功能Demo
2014-10-11
微信支付资源一篓筐
2014-07-22
PDM表名和表字段注解脚本
2013-02-27
Android API 中文文档 chm格式
2012-08-09
Java24种设计模式与6大设计原则
2012-08-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人