5 OpenLD

尚未进行身份认证

我要认证

金融圈程序员

等级
TA的排名 9k+

Android自定义节点进度条NodeProgressBar

NodeProgressBar一.简介Android日常开发中我们可能会遇到开发一个带节点的进度条的需求,这个需求看似简单,实际上可以挖掘出不少东西。做的好的话也可以做成相对通用的自定义组件。二.自定义属性<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="NodeProgressBar"> <attr name="nodeCount"

2020-07-06 23:01:09

Android 布局圆角方案总结

一.遇到的问题 最近在开发中会遇到Android布局切圆角的需求,大多数是对一个layout布局切下圆角。这里和图片切圆角有一些雷同的地方,可以相互借鉴,但是也不不全一样。图片切圆角的一些总结和实践准备下次有空再写出来。 假设我们要对一种LinearLayout布局切圆角,不知道你能想出来哪些办法。我这里先提供下我的思路,亲自实践过的主要包括下面五种: 1.利用xml背景文件配置shape属性实现切圆角 2.利用GradientDrawable实现切圆角 3.利用...

2020-06-09 23:57:04

大话设计模式十九:中介者模式

一.模式定义中介者模式(Mediator Pattern)定义:用一个中介对象封装一系列的对象交互,中介者使各对象显示地相互作用,从而使其耦合松散,而且可以独立地改变他们之间的交互。Mediator Pattern: Define an object that encapsulates how a set of objects interact. Mediator promotes loo...

2019-10-27 15:48:48

大话设计模式十八:迭代器模式

一.模式定义迭代器模式(Iterator Pattern) :提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示。Iterator Pattern: Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation...

2019-05-04 21:43:42

大话设计模式十五:模板模式

一.模式定义模板方法模式(Template Method Pattern):定义一个操作中算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法是一种类行为型模式Template Method Pattern: Define the skeleton of an algorithm in an operation, deferr...

2019-05-01 23:10:03

大话设计模式十七:策略模式

一.模式定义策略模式(Strategy Pattern):定义一系列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化。Strategy Pattern: Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets th...

2019-05-01 22:41:12

大话设计模式十六:享元模式

一.模式定义享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。Flyweight Pattern: Use sharing to support large numbers of fine-grained objects efficiently.二.模式要素...

2019-05-01 22:22:51

大话设计模式十四:组合模式

一.模式定义组合模式(Composite Pattern):组合多个对象形成树形结构以表示“整体-部分”的结构层次。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性。Composite Pattern: Compose objects into tree structures to represent part-whole hierarchies. Composite...

2019-04-21 14:43:16

大话设计模式十三:装饰者模式

一.模式定义装饰模式(Decorator Pattern) :动态地给一个对象增加一些额外的职责(Responsibility),就增加对象功能来说,装饰模式比生成子类实现更为灵活。Decorator Pattern: Attach additional responsibilities to an object dynamically. Decorators provide a flexi...

2019-04-21 13:00:21

Android实现自定义的电池充电View

最近简单学习了一下Android自定义View的实现,感觉趁热打铁动手实践最重要,写了一个电池充电的简单带动画自定义View。效果如下所示:实现方法其实很简单,总结来看就3步:1.新建attrs.xml来自定义相关的属性2.自定义Battery继承View。在构造器中获取参数,在onMeasure()方法中进行尺寸测量,在onDraw()方法中进行绘制3.在Main...

2019-04-07 17:39:43

大话设计模式十二:访问者模式

一.模式定义访问者模式(Visitor Pattern):表示一个作用于某对象结构中的各元素的操作,它使我们可以在不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式是一种对象行为型模式。Visitor Pattern: Represent an operation to be performed on the elements of an object structure. Vi...

2019-03-03 14:05:25

大话设计模式十一:桥接模式

一.模式定义Bridge Pattern: Decouple an abstraction from its implementation so that the two can vary independently. 桥接模式(Bridge Pattern):将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接...

2019-02-24 22:01:30

大话设计模式十:观察者模式

一.模式定义Observer Pattern: Define a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically. 观察者模式(Observer Pattern):定义...

2019-01-13 22:16:19

大话设计模式零:一句话理解面向对象6大设计原则

        设计模式的核心思想其实就是下面的6大设计原则,理解了这6大设计原则其实也就好理解后面的23种设计模式的动机和巧妙之处了。 一.单一职责原则(Single Responsibility Principle, SRP)定义:一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起它变化的原因。理解:尽量根据类的功能将一个混杂多种关联度低的功能...

2019-01-13 20:18:40

大话设计模式九:状态模式

一.模式定义对象行为型模式。状态模式:允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。State Pattern: Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.  二.模式要...

2018-11-24 20:47:37

大话设计模式八:适配器模式

一.模式定义对象结构型模式,类结构型设计模式。  适配器模式:将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作。  Adapter Pattern: Convert the interface of a class into another interface clients expect. Adapter lets classes work toget...

2018-11-12 21:34:45

大话设计模式七:外观模式

一.模式定义对象结构型模式。外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。Facade Pattern: Provide a unified interface to a set of interfaces in a subsystem. Facade defines a high...

2018-10-12 22:35:55

给 Android 开发者的 RxJava 详解

这篇文章的目的有两个: 1. 给对 RxJava 感兴趣的人一些入门的指引 2. 给正在使用 RxJava 但仍然心存疑惑的人一些更深入的解析RxJava 到底是什么 RxJava 好在哪 API 介绍和原理简析 1. 概念:扩展的观察者模式 观察者模式 RxJava 的观察者模式 2. 基本实现 1) 创建 Observer 2) 创建 Observabl...

2018-10-12 09:24:01

大话设计模式六:建造者模式

一.模式定义对象创建型模式。实现复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。Builder Pattern: Separate the construction of a complex object from its representat...

2018-10-04 12:06:09

大话设计模式五:代理模式

一.模式定义对象结构型模式。给某一个对象提供一个代理,并由代理对象控制对原对象的引用。Proxy Pattern: Provide a surrogate or placeholder for another object to control access to it. Frequency of use: medium high. 二.模式要素业务角色:真正的业务角色代理...

2018-10-03 21:07:11

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。