排序:
默认
按更新时间
按访问量

View机制深入学习(五) 事件处理机制一

以TouchEvent为主,看一下View和ViewGroup内部是如何处理Input Events的; 首先来看事件的产生来源:一、获取事件:事件的来源可以分为“软件”,“硬件”两种; 主要的事件包含有: 按键事件(KeyEvent) :即物理按键按下产生的事件,相关的常用物理按键一...

2016-05-10 17:26:37

阅读数:1447

评论数:0

Activity启动过程(一)AMS

在前面《Android启动过程》中提到了System进程启动ActivityManagerService服务,AMS是由Android提供的用于管理Activity(不仅仅指Activity,还包括其他三个组件)运行状态的系统进程,则是平时编写APK应用程序时使用得最频繁的一个系统服务。     ...

2015-08-25 10:22:26

阅读数:2261

评论数:0

Android启动过程——init,Zygote,SystemServer

一、Android设备启动经历的三个阶段:Boot Loader;Linux Kernel;Android系统服务;每个阶段都有自己的启动画面。 1、Android中第一个被启动的进程——init,init进程的PID为0,其他的服务都由其进行创建。它是通过解析init.rc脚本来构建出系统的初始...

2015-08-18 11:12:29

阅读数:3297

评论数:0

Binder机制解析(一)

一、Binder通信流程简单概述 (一)Binder用以Android内部的进程间通信,Binder相对于传统的Linux内核IPC(管道,信号,消息队列,共享内存,插口等)具有仅需拷贝一次内存的好处,进而提高了效率,也节省了内存;     从设计模式来看,Binder通信可以抽象为上图C/...

2015-07-13 16:51:56

阅读数:1778

评论数:0

Volley源码分析

一、Volley框架图     根据图简单猜测Volley工作的流程,见右下角的注释,蓝色表示主线程(main thread),绿色表示缓存线程(cache thread),黄色表示网络线程(network threads); 再寻找图中的关键字:queue(RequestQueue),ca...

2015-06-19 11:04:47

阅读数:3239

评论数:0

设计模式汇总:结构型模型(下)

总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命...

2016-05-25 16:29:41

阅读数:6938

评论数:0

Retrofit源码解析

square公司开源了一系列的优秀库,比如Retrofit,OkHttp,Picasso等, 前面简单分析了Picasso的源码,这里来分析下Retrofit的使用:一、gradle添加依赖compile 'com.squareup.okhttp:okhttp:2.4.0' compile 'c...

2016-05-23 08:54:51

阅读数:10084

评论数:6

Fragment源码解析

一、Fragment的简单使用:FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.add(R.id.radio1, tabFourFragment, tabFo...

2016-05-18 19:11:34

阅读数:4027

评论数:1

Picasso源码解析

一、Picasso使用:gradle:compile 'com.squareup.picasso:picasso:2.5.2'使用:Picasso.with(this).load("http://...../photo3.jpg").into(myImg);自定义的使用方法:P...

2016-05-15 17:03:14

阅读数:6663

评论数:2

设计模式汇总:结构型模型(上)

总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命...

2016-05-12 10:11:43

阅读数:5785

评论数:3

二叉树简单汇总

一、二叉树常见算法二、二叉搜索树(BST,也称二叉查找树): 1、定义: 是指一棵空树或者具有下列性质的二叉树: 任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 任意节点的左、右子树也分别为二叉查找树...

2016-05-05 16:02:50

阅读数:443

评论数:0

设计模式汇总:创建型模式

总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命...

2016-04-30 17:26:47

阅读数:9692

评论数:1

ArrayMapy、SparseArray源码学习

ArrayMap和SparseArray是Android中提供用来替代HashMap实现内存优化的集合类,来具体看下其源码实现: 一、ArrayMap简单分析 1)存储原理: HashMap是使用一个table数组来存储;发生冲突时采用链地址法以链表或者红黑树的形式进行存储; 而Array...

2016-04-21 22:14:13

阅读数:780

评论数:0

简单算法汇总

零、全排列问题(Permutation) 问题描述:即给定{1,2,3},返回123,132,213,231,312,321 《Permutation》 1)无顺序的全排列问题: 将序列P(n) = {1….. n}的全排列问题看成P(n)={1,P(n-1)} + {2,P(n-1)}…...

2016-04-19 21:19:00

阅读数:2511

评论数:2

GSON源码解析

把之前做的笔记又重新整理了一下,发现简单只看了GSON的解析流程; 1、GSON的两种解析使用方式: 1)直接利用GSON中默认的反射机制来解析: Gson gson1 = new Gson(); gson1.fromJson(str, Data.class);2)利用自定义的TypeAdapte...

2016-03-13 20:58:10

阅读数:1242

评论数:0

Handler机制深入解析

知乎上看到这样一个问题Android中为什么主线程不会因为Looper.loop()里的死循环卡死?,于是试着对Handler源码重新看了一下,其实Android的消息机制是Pipe+epoll,有消息时则依次执行,没消息时调用epoll.wait等待唤醒;由于Android中生命周期、UI绘制都...

2016-03-02 15:50:07

阅读数:917

评论数:0

简单的自定义加载ProgressBar

控件效果图: 一、在attr中自定义属性: 二、在布局中使用: <...

2016-02-24 22:09:33

阅读数:707

评论数:0

Service绑定形式启动过程

一、绑定形式Service的使用 1)定义一个Service,注意重写onBind方法,返回一个IBinder对象 public class MyService extends Service { public static final String LOG_TAG = &qu...

2016-01-18 10:56:46

阅读数:1018

评论数:0

圆形图片CircleImageView

1、在values文件中创建attrs.xml,自定义属性: 2、在布局文件中使用: <cn.edu.hust.buildingtalkback.myview.CircleImageView android:id="@+...

2016-01-14 20:26:50

阅读数:694

评论数:0

leetcode 58、Length of Last Word;59、Spiral Matrix II ;60、Permutation Sequence

58、Length of Last Word 最后一个单词的长度 一、问题描述: Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the l...

2016-01-13 22:01:05

阅读数:890

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭