(二)自定义VIew理论之View工作流程 一、简述View 的工作流程主要是指 measure、layout、draw 这三大流程,即测量、布局、绘制。measure 确定 View 的测量宽高;layout 确定 View 的最终宽高和四个顶点的位置;draw 则将 View 绘制到屏幕上。 二、measure 过程1. View 的 measure 过程由 measure()方法来完成,measure()方法是 final 类型的方法 2016-12-10 Android Android 自定义View
(一)自定义View理论之View绘制原理 一、简述自定义 View 是 Android 进阶之路不可避免的难关。此刻下定决心攻克这个难关,以此为证。在学习绘制自定义 View 之前先来思考一下系统是如何绘制出这些 View 的。推荐《Android 群英传》、《Android 开发艺术探索》这两本书,本系列文中很多都来源于这两本的阐述。 二、View 的测量设想这么一个游戏:一个人蒙着眼睛,另一个人通过说话来指示蒙着眼睛的人去画他想画图案 2016-12-09 Android Android 自定义View
读《大话设计模式》之观察者模式 一、模式概述定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有的观察者对象爱,使他们能够自动更新自己。 UML 图 二、模式优缺点优点 观察者模式在被观察者和观察者之间建立一个抽象的耦合。被观察者角色所知道的只是一个具体观察者列表,每一个具体观察者都符合一个抽象观察者的接口。被观察者并不认识任何一个具体观察者,它只知道它们都有一个共同的接 2016-11-22 设计模式 设计模式 《大话设计模式》
读《大话设计模式》之备忘录模式 一、模式概述在不破坏封装性的前提下,捕获一个对象的内部状态,并在改对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 UML 图Originator(发起人):负责创建一个备忘录 Memento,用以记录当前时刻它的内部状态,并可以使用备忘录恢复内部状态。Originator 可根据需要决定 Memento 存储 Originator 的哪些内部状态。Memento(备忘录):负责存 2016-10-12 设计模式 设计模式 《大话设计模式》
读《大话设计模式》之适配器模式 一、模式概述将一个类的接口转换成客户希望的另外一个接口适配器的意思就是使得一个东西适合另一个东西的东西。如,不同国家有不同标准的电压(110V、220V),于是就需要电源适配器。 UML 图Target:客户所期待的接口。(目标可以是具体的或抽象的类,也可以是接口)Adaptee:需要适配的类。Adapter:适配器类。(通过在内部包装一个 Adaptee 对象,把源接口转换成目标接口)Clien 2016-10-11 设计模式 设计模式 《大话设计模式》
读《大话设计模式》之状态模式 一、模式概述在很多情况下,一个对象的行为取决于它的一个或多个变化的属性,这些属性我们称之为状态,这个对象称之为状态对象对于状态对象而言,它的行为依赖于它的状态。这样的一个对象,当它在于外部事件产生互动的时候,其内部状态就会发生改变,从而使得他的行为也随之发生改变所谓状态模式就是允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。 没图说个文明你我他。 UML 图1.State 类 2016-10-10 设计模式 设计模式 《大话设计模式》
读《大话设计模式》之抽象工厂模式 一、模式概述提供一个创建一系列相关或互相依赖的接口,而无需指定它们具体的类。 先来认识下什么是产品族: 位于不同产品等级结构中,功能相关联的产品组成的家族。 UML 图 抽象工厂角色: 这是工厂方法模式的核心,它与应用程序无关。是具体工厂角色必须实现的接口或者必须继承的父类。在 java 中它由抽象类或者接口来实现。 具体工厂角色:它含有和具体业务逻辑有关的代码。由应用程序调用以创建对应的具体 2016-03-10 设计模式 设计模式 《大话设计模式》
读《大话设计模式》之简单工厂模式 一、模式概述简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。 UML 图 工厂(Creator)角色:简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类的创建产品类的方法可以被外界直接调用,创建所需的产品对象。 抽象产品(Product)角色:简单工厂模式所创建的所有对象的父类, 2016-01-22 设计模式 设计模式 《大话设计模式》