Earth Guardian

You are not LATE!You are not EARLY!

0%

概念

让服务与远程进程通信,可使用 Messenger 为服务提供接口。通过 Messenger 发送消息(Message)来实现进程间的通信 (IPC)。

阅读全文 »

基本概念

序列化和反序列化

序列化和反序列化是指:将一个实例对象编码成字节流,并从字节流编码中重新构建对象实例的能力。

  • 序列化
    将一个对象编码成字节流。
  • 反序列化
    从一个字节流中读出一个对象实例。

反序列化是按照序列化写入的顺序读取的。

阅读全文 »

Android 应用启动时,系统会为应用新建一个 Linux 的进程,默认情况下同一应用程序下的所有组件运行在相同的进程和线程(主线程,也是 UI 线程)中。
一个Android 应用就是一个 Linux 进程,每个应用在各自的进程中运行,互不干扰比较安全。一个应用对应一个主线程,就是通常所说的 UI 线程,Android 遵守的就是单线程模型,所以说 UI 操作不是线程安全的。

阅读全文 »

基本概念

ViewGroup 继承 View ,但是用来作为一个容器,装载各种 View 以及对它们做 UI 布局,比如高、宽、对齐方式等等,布局文件中凡是以 layout_ 开头的属性,都是传递给 ViewGroup 来解析和使用的。ViewGroup 主要是计算子 View 的测量高宽并决定他们的位置。 重写 LayoutParams 可以自定义子 View 的特定参数,比如 weight 等。

阅读全文 »

基本概念

测量模式 MeasureSpec

MeasureSpec 由两部分组成:

  • mode : 测量模式
  • size : 测量的尺寸大小
阅读全文 »

介绍

查看源码,CheckedTextView 实际上就是一个可以接受选中的 TextView ,并且能自定义更换选中的图标.

阅读全文 »

基础

适配器模式

将一个类的接口转换成客户希望的另外一个接口, Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。

阅读全文 »

概述

ConstraintLayout 是一种构建于弹性 Constraints(约束)系统的新型 Android Layout,使用方法和 RelativeLayout 类似,但是比它更灵活和更容易使用。

阅读全文 »

概述

加载器 Loader 支持在 ActivityFragment 中异步加载数据,具有如下几个特点:

  • 可用于每个 ActivityFragment
  • 支持异步加载数据
  • 监控其数据源并在内容变化时传递新结果
  • 在某一配置更改后重建 Loader 时,会自动重新连接上一个 LoaderCursor,因此它们无需重新查询其数据
阅读全文 »