当前搜索:
Thread(线程)
线程的创建
扩展Thread类:
实现Runnable接口并将其实例通过Thread构造传递给Thread
Callable+FutureTask+Thread: 此方法创建的线程有返回值。具体实现:将
实现Callable接口的实例传递给FutureTask的构造函...
Handler
Handler:
概述: Handler负责取出、发送并且处理Message,每个Handler实例都与
创建它的线程以及该线程的MessageQueue相关联。默认的Handler是同步的,也可以扩
展android.os.Handler构造异步Handler,即异步发...
memory analyzer (内存分析)
android 内存优化关键点
(一:布局)
背景图的选择:
对于布局中的背景,能用color的尽量使用color,不要是图片代替。
对于规则的图片,能用shape画图的,尽量使用shape,不要使用图片
复用ItemView:
对于L...
真机:第一步:把手机root,获取root权限(当时做的时候当好我已经把手机root了(未root的情况下没有测试))
第二步:我用的是win,所以打开cmd,将文件目录定位到sdk下platform-tools下的目录
第三步:查看已经连接的设备:adb devices
第四步:获取/data下...
Session会话
概述:
当用户打开某个web应用的时候,便与web服务器产生一次session。使用session把用户信息保存在服务器上,
用户离开网站后session被销毁。这种方式相对Cookie来说更安全。
缺陷:
一:当服务器做了负载均衡时,下一个操作请求到另一台服务器的时候...
概述:
属性动画是android3.0以后提供的一种动画实现机制,它可以作用于任何对象,对对象的属性赋值
修改,从而实现动画效果。
实现原理:在一定的时间内,通过插值器(动画改变的趋势)与估值器(动画具体变化的数值),不断改
变对象的属性,实现动画的效果。
动画——帧动画(Drawable Animation)
概述:
帧动画就是在一段时间内执行多少帧,每一帧都是Drawable下的一个
资源文件。也就是说一段时间内播放多少个drawable,其本质就是
drawable。这种动画往往会使用大量的图片,不但适配复杂,而且
会增加安装包的体积,...
动画——View Animation
简介:视图动画又称补间动画,是android中比较古老的一种动画,补间动画执行完以后
并没有改变View的真是位置属性。
AlphaAnimation:透明度动画
xml属性
Java方法
解释 android:fromAlpha
Alph...
定义:
动态的给对象添加一些额外的职责。就增加功能来说,装饰者模式提供了比继承更加有弹性的另一种方案。
概述:
装饰者模式可以透明的给对象增加功能,并实现功能的组合。被装饰的对象可以已经被装饰过多次,在Java中I/O是装饰者模式的典型代表之一。
实例(Kotlin语言)
被装饰者的抽象类:...
定义:
提供一个用来访问子系统一群接口的接口,该接口让子系统更容易使用。
概述:
外观模式的目的不是定义一个具有新功能的接口,而是提供一个接口让客户端减少与子系统多个模块的交互,松散耦合,让子系统更加容易使用,但是你也可以不用该接口而直接访问子系统。
实例(Kotlin语言)
模块A的接口以...
定义:
将一个类的接口转换成客户希望的另一个类的接口,适配器模式使原本不兼容的类可以在一起工作。
概述:
主要功能是匹配转换,目的是复用已有的功能。适配器类里面也可以有自己的实现,并且适配器类是用对象的组合的方式来调用适配者中的实现。
实例(Kotlin语言)
以下是Duck接口(对应标准模...
定义:
将请求封装为对象
概述
命令模式的关键就是把请求封装为命令对象,制定统一的执行操作接口,所有的操作包括存储、转发、记录等都围绕这个对象进行。标准的命令模式会有以下几个类:
Command:命令的接口类,声明执行的方法
ConcreteCommand:具体的命令类,实现了Comman...
定义
组合模式将对象组合成整体-部分的层次结构,使得整体和部分的处理具有一致性。
概述
组合模式使用一个抽象类,使得叶节点和枝节点能够统一起来,用户可以不再区分就可以对枝和叶做统一处理。
component(抽象组件):为组合的对象声明接口,使用户可以统一的访问和管理组合对象,这里可以实现缺...
定义:
顺序访问聚合对象中的各个元素,又不暴露对象中的表示
概述
实例(java语言)
迭代接口
public interface Iterator {
/**
* First.移动到第一个对象位置
*/
void first(); /**
...
定义:
模板方法模式定义了一个算法的步骤,并允许子类为一个或者多个步骤提供实现。
概述
本模式包含一个抽象类及多个实现类,一下分别介绍
抽象类AbstractClass
此类定义了算法的骨架,并确定了其执行顺序,一般是不允许改变的,其抽象方法需要子类去实现
具体类(ConcreteCla...
定义:
观察者模式定义了对象之间的一对多的依赖关系,当一个主题(Subject)对象的状态发生改变时,他的依赖者(Observer)都会收到通知。
概述
此模式有四个比较重要的类,下面一一说明
主题类(Subject)
可以是抽象类也可以是接口,具体的主题要实现该类
具体主题类(Weat...
定义:
允许一个对象在其内部状态改变时改变其行为
概述
状态模式和策略模式很相似,要注意区分其区别,也有三个(至少三个)比较重要的类
状态类接口(State)
状态模式首先定义一个状态类接口(State),声明其所有的动作
具体状态类(SoldState、SoldOutState、NoQ...
定义:
策略模式定义了算法族 ,分别封装起来,让它们之间可以相互替换。此模式让算法的变化独立于使用算法的客户。
概述
此模式又称政策模式(Policy pattern),有三个比较重要的类
抽象策略类(FlyBehavior/QuackBehavior)
抽象策略类可以有一个,也可以有多个...
mStrokeInset:
表示让RectF向上下、左右的增加或减少量,arcBounds.inset(mStrokeInset, mStrokeInset);,mStrokeInset>0是减小,mStrokeInset
if (mRingCenterRadius 0 || mi...