定义: Messager 可以翻译为信使,它可以在不同进程中传递Message对象,在Message中放入我们需要传递的数据,就可以实现数据在不同进程之间进行传递了。实质上M...

定义: Messager 可以翻译为信使,它可以在不同进程中传递Message对象,在Message中放入我们需要传递的数据,就可以实现数据在不同进程之间进行传递了。实质上M...
ADB 简介: ADB即是Android Debug Bridge,它是Android开发/测试人员不可替换的强大工具,也是Android设备玩家的好玩具。 常用命令:启动/...
简介 在进程之间的通信——Messenger的文章中说到了通过Messenger进行进程间的通信,可以发现Messenger是以串行的方式处理客户端发送来的消息,如果大量的消...
自定义一个支持圆形,圆角矩形的ImageView,并且可以设置相应的边框的ImageView,支持设置边框宽度,设置圆角的半径。效果图如下: 通过继承ImageView,然后...
栈和堆的区别 栈是运行时单位,代表着逻辑,内含基本数据类型和堆中对象引用,所在区域连续,没有碎片;堆是存储单位,代表着数据,可以多个栈共享(包括成员中基本数据类型,引用和引用...
静态代理 介绍: 给目标对象提供一个代理对象,并由代理对象控制对目标对象的引用。代理对象:起到中介作用,连接客户端和目标对象。通过引入代理对象的方式间接访问目标对象,从而防止...
参考:https://blog.csdn.net/davidddl/article/details/75667092https://blog.csdn.net/weixin_...
方法一: 利用onStartCommand方法中,返回START_STICKY。 返回值含义适用场景START_STICKY当Service因内存不足而被系统kill后,一段...
1.Android的性能优化方法 1.1布局优化尽量减少布局文件的层级。在可以使用LinearLayout,可以使用RelativeLayout的情况下,使用LinearLa...
1.定义: 适配器模式是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的不兼容的接...
MultiType的简单介绍 MultiType是一个多类型的列表视图的中间分发框架,MultiType能够轻松地解决不同的Item类型的问题,随时可扩展新的类型加入到列表中...
委托属性的语法 val/var <属性名>:<类型> by <表达式>在by后面的表达式是改委托,因为属性对应的get()(与set())会被委托给它的getValue()与...
SurfaceView与View的区别 如果在16ms内View完成了你所需要执行的所有操作,那么用户在视觉上,就不会产生卡顿的感觉;而如果操作的逻辑太多,特别是需要频繁刷新...
通常情况下,可以在AndroidMainifest文件中的 标签中使用以下几种属性来清除任务栈。 clearTaskOnLaunch clearTaskOnLaunch就是在...
简介 LiveData是一种可观察的数据存储器类。与常规的可观察类不同,LiveData具有生命周期感知能力,即遵循其他引用组件(如Activity,Fragment或Ser...
简介 点击事件的事件分发,其实就是对一个MotionEvent事件的分发过程,即当一个MotionEvent产生了以后,系统需要把这个事件传递给一个具体的View,而这个传递...
定义 观察者模式定义了对象间一对多的依赖关系,使得对象状态发生变化时,所有依赖它的对象都会受到通知并且自动更新自己。通俗来说就是多个观察者订阅了一个被观察者的时候,被观察者发...
反射的定义 Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对于任何一个对象,都能够调用它的任意方法和属性。这种动态获取信息以及动态调用对象...
泛型的定义: 泛型的本质就是参数化类型的应用,也就是说所有操作的数据类型都被指定为一个参数,在用到的时候才指定具体的类型。这种参数类型可以用在类,接口和方法中创建,分别称为泛...
APT的简介 定义APT即是Annotation Processing Tool ,它是一个javac的一个工具,中文的意思是编译时注解处理器,可以用来在编译时扫描和处理注解...