自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 换了个地写博客

最近换了个地写博客,我的简书,为什么会迁移到简书,这个梗得好好说一下,因为我觉得不仅仅是技术可以交流,比如对产品的看法,人生的感悟,碰到的坑等等这些都可以很好的跟一群喜欢阅读和喜欢写作的人交流。当然为了保证技术博客的质量,一般在简书上经过考验的技术类文章会收录到我的个人博客 ,欢迎大家关注我的简书...

2016-04-07 17:47:32 441 0

原创 Android注解框架Dagger ,Butterknife 和AndroidAnnotations以及RoboGuice的比较

http://stackoverflow.com/questions/24351817/dagger-and-butter-knife-vs-android-annotations 这片文章的答案,简单的介绍了三种注解框架(Dagger,Butterknife以及AA)的异同以及简单的比较。Ro...

2015-08-08 22:14:06 1602 0

原创 原型模式详解

UML图原型模式URL图如下: 解决问题原型模式是一种对象创建模式,采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建实例,可以具有与原型一样的初始化数据。工作原理通过将一个原型对象传递给要发送创建的对象,这个要发动创建的对象通过请求原型对象复制它们来实施创建。实际应用如果一...

2015-04-17 09:36:50 574 0

原创 工厂方法模式详解

UML图工厂方法模式URL图如下: 解决问题在简单工厂模式进一步抽象而来,解决了如何实例化一个对象,也克服了简单工厂模式中违背的“开-闭原则”的缺点。核心思想工厂方法模式中,核心的工厂类不再提供所有产品的创建工作,而是将具体的产品交给具体的工厂类去实现。核心工厂类值负责制定具体工厂需要实现的接口...

2015-04-17 09:08:01 622 0

原创 简单工厂模式详解

UML图简单工厂模式的UML图如下: 解决问题简单工厂模式解决了如何去实例化一个合适的对象。核心思想简单工厂模式的核心思想就是有一个专门的类(工厂类)负责创建实例的过程。 把产品看成是一系列类的集合,这些类是由某个抽象类或者接口派生出来的一个对象树。而工厂类负责来生产一个合适的对象来满足用户的...

2015-04-17 08:27:52 691 0

原创 自定义网络加载视图NetworkImageView

NetworkImageView简介:在布局中使用自定义视图:<com.mrljdx.loadimage.NetWorkImageView android:id="@+id/myNetImgView" android:layout_widt...

2015-04-16 20:56:38 901 0

原创 自定义View

View基类呈现一个100x100像素的空白正方形,要改变控件的大小并呈现一个不同的界面则需要分别对onMesure和onDraw方法进行重写。 onMesure方法中,新的视图将会计算一系列给定的边界条件下占据的高度和宽度。 onDraw方法用于在画布上进行绘图。 下面代码中定义了一个My...

2015-04-13 15:13:56 399 0

原创 Android中常用的设计模式

Android中其实到处都是设计模式或者设计模式的联合运用的地方,以下设计模式是Android设计中常见的: Observer模式 Abstract Factory模式 Adapter模式 Template Method模式 Composite模式 Strategy模式 State模式 Proxy...

2015-04-13 10:44:44 529 0

原创 Android应用性能优化笔记

性能优化概要: 不要在主线程中做耗时操作,比如网络请求,文件读写等。 使用ViewStub来推迟初始化,在运行时展开资源。 使用RelativeLayout代替嵌套LinearLayout,尽可能扁平化布局。减少创建对象的数量,也会让事件的处理速度更快。(了解View事件的传递机制) 主线程中尽可...

2015-04-13 10:13:57 518 0

原创 AndroidManifest.xml简介

在Android开发接触的最多的可能就是AndroidManifest.xml这个配置文件了,这里配置文件中包括了应用程序中的大部分信息,系统在运行代码时,需要知道这些基本信息。比如开发中的Activity、Service、Broadcast都需要在这里定义。如果用到了一些系统自带的服务比如拨号、...

2015-04-12 18:15:39 611 0

原创 Java中enum的本质

在平时的开发中,经常需要用到枚举,其实枚举enum 定义了一个特殊的类,这个类继承自java.lang.Enum,不过这是由编译程序处理的,直接写一个类继承Enum类会被编译程序拒绝。 来看一段代码:public enum Action{ UP,RIGHT,DOWN,LEFT }在编译之...

2015-04-07 10:29:29 773 0

原创 Java对象封装

在看了设计模式-迪米特法则之后,应该就可以理解Java中对象的封装。什么是封装?在Java中定义了类,其实有点类似于面向过程设计中定义一个结构体一样,但是有个概念必须清楚,那就是定义类不等于做好了封装。封装是遵循迪米特法则的,就是让调用时不用去了解内的内部构造,只需要调用相应的对外方法即可。 具...

2015-04-07 10:00:17 2608 0

翻译 Receiving intents

原文地址: https://github.com/excilys/androidannotations/wiki/Receiving-intents 接收意图@Receiver注释通知你的代码的意图,而不必手工申报和注册一个BroadcastReceiver。例如:@EActivity pu...

2015-04-06 22:09:55 407 0

翻译 @EReceiver加强广播接收器

原文地址: https://github.com/excilys/androidannotations/wiki/Enhance-broadcastreceivers 你可以使用@EReceiver注释增强一个Android BroadcastReceiver :@EReceiver pub...

2015-04-06 21:38:49 553 0

翻译 @EProvider加强contentprovider

原文地址: https://github.com/excilys/androidannotations/wiki/Enhance-contentproviders 你可以使用@EProvider注释加强一个Android内容提供商与:@EProvider public class MyCon...

2015-04-06 21:06:03 315 0

翻译 Extra

原文地址: https://github.com/excilys/androidannotations/wiki/Extras#executing-code-after-extras-injection @Extra@Extra注释一个从Activity中启动意图中获取正确值的字段,例如:@...

2015-04-06 21:01:49 478 1

翻译 @EFragment增强碎片(Fragment)

原文地址: https://github.com/excilys/androidannotations/wiki/Enhance-Fragments 支持FragmentActivity在AndroidAnnotations 2.6之前,没有支持片段注入。然而,我们确保至少继承Fragmen...

2015-04-06 20:41:35 1174 0

翻译 Injecting Views

原文地址: https://github.com/excilys/androidannotations/wiki/Injecting-Views @ViewById在Activity中@ViewById标注的字段,必须的在activity所在的布局layout中可以找到相应的ID,类似于调用...

2015-04-06 19:57:32 409 0

翻译 @AfterXXX 调用顺序

用@AfterXXX标注的方法调用次序同一个类中的同一个注释的方法调用顺序不能保证,你不应该依赖于它。如果你想多种方法按照可靠的顺序被被调用,你应该只创建创建一个注解的方法,并用它来调用它们所需顺序的其他方法。@AfterInject protected void callInOrder() { ...

2015-04-05 21:06:25 1520 0

翻译 @EBean增强自定义类

原文地址: https://github.com/excilys/androidannotations/wiki/Enhance-custom-classes 加强自定义类您可以在一个不是一个标准的Android组件(如Activity,Service)的类使用注解@EBean。 你只需要...

2015-04-05 20:42:22 1169 0

翻译 AA工作原理及注解的Activity的启动方式

译文地址: https://github.com/excilys/androidannotations/wiki/HowItWorks#starting-an-annotated-activity 概述AndroidAnnotations是以一种非常简单的方式工作。它会使用标准的Java注释...

2015-04-05 18:59:27 688 0

翻译 @EActivity增强Activities

译文地址: https://github.com/excilys/androidannotations/wiki/Enhance-activities @EActivity使用@EActivity注解表明一个Activity将通过AndroidAnnotations增强。其值的参数必须是有效...

2015-04-05 15:34:26 2804 0

翻译 @EApplication加强Application类

译文地址: https://github.com/excilys/androidannotations/wiki/Enhancing-the-Application-class 加强应用类您可以使用@EApplication注释来增强Android的Application类:@EApplic...

2015-04-05 15:25:02 497 0

翻译 @EView@EViewGroup增强的自定义视图

译文地址: https://github.com/excilys/androidannotations/wiki/Enhance-custom-views 如果你想创建自定义组建,可以使用@EView和@EViewGroup的注解方法。为什么要使用自定义组建?如果你发现在应用程序中的不同位置...

2015-04-05 15:14:35 1255 0

原创 AndroidStudio参考资料整理

这篇文章主要记录一些关于AndroidStudio的参考资料,文章内容会不定期更新。主要记录博主在使用AndroidStudio的过程中碰到的一些问题以及这些解决这些问题的博客链接。Gradle Android插件用户指南翻译通过阅读Google官方的Gradle Android插件用户指南,可以...

2015-04-05 14:04:54 539 0

原创 在AndroidStudio下搭建AGES开发框架

使用AndroidStudio(以下简称AS)作为首选的开发工具已经很普及了,但是作为一个Eclipse的老手来说,转AS还是需要点时间去适应的。比如以前常用的快捷键,代码提示: Alt+/ 在AS下是ctrl+alt+space 而 查看函数则由之前的鼠标悬浮变成了按F2查看,导入包则由之前的c...

2015-04-05 13:52:01 651 0

原创 AndroidStudio常用快捷键

本文介绍AndroidStudio一些常用的快捷键,至于怎么修改KeyMap不在本文的范畴之内,有修改快捷键需求的请绕道。Android Studio如何修改快捷键 如果不慎修改了快捷键导致冲突,请绕道Android Stuido如何查看快捷键冲突? 废了这么多话,下面进入正题。 功能 ...

2015-04-04 22:22:34 518 0

原创 工厂方法模式

什么是工厂方法模式首先来看一下Android手机和Iphone手机使用工厂方法是怎么生产的,你就懂了。 如图,首先定义了工厂的抽象类Factory 用于生产手机,其次,定义了一个手机抽象类Mobile 来定义手机的共有方法(打电话),然后定义了一个抽象方法,手机的特点。 在定义了工厂和产品...

2015-04-04 15:44:53 480 0

原创 单例模式(Singleton Pattern)

什么是单例模式首先来看一段单例模式的通用代码:public class Singleton{ //自行实例化 private static final Singleton instance = new Singleton(); /** *1,构造函数为私有,不能通过...

2015-04-04 10:17:31 604 0

原创 JVM、JRE和JDK的关系与区别

关于JVM(JavaVisualMachine)、JRE(JavaRuntimeEnvironment)、JDK(JavaDevelopmentKit)的区别可以看下面一张图。 一张图读懂JVM、JRE和JDK的关系,该图摘自Oracle官方文档简单的用一种包含关系表示就是JDK[TOOLS,J...

2015-04-03 19:40:55 1215 0

原创 设计模式读书笔记(开篇)

好的设计可以去繁就简,在软件设计中能够熟练的运用设计模式可以在不同的需求变化中“以不变应万变”。简单易懂的设计才是好的设计,下面简单的总结一下设计模式中的6个基本原则–SOLID SRP (单一职责) OCP(开闭原则) LSP(里氏替换原则) LoD(迪米特法则) ISP(接口隔离原则) DIP...

2015-04-03 13:41:00 618 0

原创 Vi/Vim编辑器常用命令

前言习惯了在Mac/Linux下工作的人,可能需要了解一些Vi/Vim编辑器相关的命令。Vim 是Vi Improved的缩写。在Vi原有的基础上进行了很大的扩展。下面分别介绍Vi常用的命令。

2015-04-02 12:01:49 746 0

转载 Android开发最佳实践建议

注:本文转载自Android Best Practice 从Futurice公司Android开发者中学到的经验。 遵循以下准则,避免重复发明轮子。

2015-04-01 23:02:31 545 0

原创 CSDN也支持Markdown了

在用Hexo搭建自己的博客Mrljdx后,玩了一个段时间,今天偶然间发现CSDN也开始支持Markdown写博客了,这对于我们这些搞技术的人来说无疑是一件喜大普奔的事。 PS:之所以用Hexo搭建私有博客,一方面是为了装B,另一方面是因为能用Markdown来写文章,手不离键盘就搞定了很多复杂...

2015-04-01 00:49:10 815 0

原创 Mac下配置Java开发环境以Java 8 为例

在Mac OSX下配置Java 8 环境

2015-02-02 18:48:13 15526 0

翻译 AndroidStudio v1.0下配置AndroidAnnotations图文教程

在AndroidStudio v1.0下配置AndroidAnnotations 图文教程。

2015-02-02 17:58:08 774 0

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