定义?
允许一个对象在其内部状态改变时改变它的行为。
案例
比如一个表示网络连接的类TCPConnection,它有不同的状态:连接已建立(Established),正在监听(Listening),连接已关闭(Closed)。当这个TCPConnection收到其他对象请求时,根据自身不同状态做出不同的响应。使用State模式处理这类问题的时候,引入一个TCPStat...
分类:
其他好文 时间:
2014-07-25 11:28:51
阅读次数:
223
貌似已经很晚了,但是还是想记下笔记,想让今天完满。
在ListView中加了checkBox,可是发现点击改变其选中状态的时候,发现其位置错乱。状态改变的并不是你选中的,百思不得其解。后面通过上网查资料,可是个说纷纭,但是我还是找到了解决办法。
在自定义的适配器中,对checkBox的设置如下:
记住两者的顺序,先对checkBox进行事件监听,再设置其状态。前提在布局中对check...
分类:
移动开发 时间:
2014-07-18 22:26:43
阅读次数:
324
一,前言Objective-C 中的键(key)-值(value)观察(KVO)并不是什么新鲜事物,它来源于设计模式中的观察者模式,其基本思想就是:一个目标对象管理所有依赖于它的观察者对象,并在它自身的状态改变时主动通知观察者对象。这个主动通知通常是通过调用各观察者对象所提供的接口方法来实现的。观察...
分类:
其他好文 时间:
2014-07-18 09:25:31
阅读次数:
287
(十九)备忘录模式
备忘录模式目的是保存一个对象的某个状态,在适当的时候恢复这个对象。
(二十)状态模式
状态模式的意义是将表示对象状态的逻辑分散到代表状态的不同类中。为了处理状态间的迁移,可以让主对象包含一组状态的引用。或者在状态迁移的调用中,将主对象传递给状态改变的类。也可以让状态类的信息提供者仅仅给出下一个状态,而不更新主对象。无论如何管理状态迁移,状态模式都会通过将对象的不同状态操作,分散到一组类集合中,从而简化代码。...
分类:
编程语言 时间:
2014-07-14 18:06:52
阅读次数:
415
当手机Modem状态改变后会将状态变化信息通知到上层,通过《Android 4.4 Kitkat Phone工作流程浅析(八)__Phone状态分析》和《Android 4.4 Kitkat Phone工作流程浅析(六)__InCallActivity显示更新流程》的分析,我们知道了Phone状态的类型,以及这些状态的上报流程,而本文主要分析Phone状态改变之后是如何通知到三方应用的。...
分类:
移动开发 时间:
2014-07-14 16:53:25
阅读次数:
344
状态模式(state pattern) 详解本文地址: http://blog.csdn.net/caroline_wendy状态模式(state pattern): 允许对象在内部状态改变时改变它的行为, 对象看起来好像修改了它的类.建立Context类, 包含多个具体状态(concrete state)类的组合, 根据状态的不同调用具体的方法, state.handle(), 包含set\ge...
分类:
其他好文 时间:
2014-07-12 23:55:20
阅读次数:
385
状态模式:状态模式的意图是,允许一个对象在其内部状态改变时,改变它的行为。看起来就像是改变了它的类一样。主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同的一系列类当中,可以把复杂的逻辑判断简单化。类图如下图所示State类,抽象状态类,定义一个接口以封装...
分类:
编程语言 时间:
2014-07-07 00:08:29
阅读次数:
406
基本思路:
方法1.遮罩可直接叠加一层带alpha的纯白、或纯黑View,可直接在ImageView外套一层FrameLayout,其foreground(一般同学可能只知道background,其实framelayout还有foreground)给定一个selector(按下时给0x33000000,即泛黑),到位。
方法2.重写imageView,按下状态改变时invalidate(触发o...
分类:
移动开发 时间:
2014-07-03 18:36:24
阅读次数:
277
应用开发中,经常会遇到需要多线程技术的时候,比如UI显示和数据处理分开。在实际应用中经常会遇到这种场景,我们需要新开一个线程来监听数据状态(数据状态的改变,接收数据,发送数据等等),当发现数据状态改变时通知主线程(通过消息机制发送消息到主线程),主线程接收到通知之后进行处理(自定义消息处理接口)。具...
分类:
编程语言 时间:
2014-06-28 10:09:47
阅读次数:
214
观察者模式定义对象之间的一对多的依赖,当那一个对象(主题)状态改变时,所有的依赖者(观察者)都会收到通知并作出相应的动作。
观察者模式的使用非常广泛。
代码实现:
-------------------主题接口
public interface Subject
{
public void registerObserver(Observer o);
p...
分类:
其他好文 时间:
2014-06-26 07:20:02
阅读次数:
194