从前文<源代码解析:dialog, popupwindow, 和activity 的第一个view是怎么来的?>中知道了activity第一个view或者说根view或者说mDecorView 事实上就是一个FrameLayout,以及是在系统handleResume的时候增加到系统windowManager中的,并由framework中的ViewRootImpl 接管,通过ViewRootImpl.setView() 開始整个显示过程的. 这次着重梳理一下view的显示过程(onAttach…
上一篇文章我们了解了View的onMeasure,那么今天我们继续来学习Android View绘制三部曲的第二步,onLayout,布局. ViewRootImpl#performLayout private void performLayout(WindowManager.LayoutParams lp, int desiredWindowWidth, int desiredWindowHeight) { mLayoutRequested = false; mScrollMayChange…
到眼下为止,measure过程已经解说完了,今天開始我们就来学习layout过程.只是在学习layout过程之前.大家有没有发现我换了编辑器,哈哈.最终下定决心从Html编辑器切换为markdown编辑器.这里之所以使用"下定决心"这个词.是由于毕竟Html编辑器使用好几年了.非常多习惯都已经养成了,要改变多年的习惯确实不易.相信这也是还有非常多人坚持使用Html编辑器的原因. 这也反应了一个现象.当人对某一事物非常熟悉时,一旦出现了新的事物想代替老的事物时,人们都有一种抵触的情绪,做…
韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha android onmeasure onlayot ondraw 顺序 ====== 1,创建类 ,覆盖构造方法, 2,编写 attr.xml,自定义控件的xml的属性 3,在 View的构造方法中 , 获取到这些属性 4,可以再用OnMeasure,OnLayout,OnDraw 来绘制 view. 5,在布局文件中 添加这个自定义的view,同时 添加上对应的命名空间. ====…
0: 主要函数调用分析 rtmpdump 是一个用来处理 RTMP 流媒体的开源工具包,支持 rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.也提供 Android 版本. 最近研究了一下它内部函数调用的关系. 下面列出几个主要的函数的调用关系. RTMPDump用于下载RTMP流媒体的函数Download: 用于建立网络连接(NetConnect)的函数Connect: 用于建立网络流(NetStream)的函数 rtmpdump源代码…
如果不太熟悉MyBatis使用的请先参见MyBatis官方文档,这对理解其架构设计和源码分析有很大好处. 一.概述 MyBatis并不是一个完整的ORM框架,其官方首页是这么介绍自己 The MyBatis data mapper framework makes it easier to use a relational database with object-oriented applications. MyBatis couples objects with stored procedur…
http://wenku.baidu.com/link?url=R-QoZXhc918qoO0BX6eXI9_uPU75whF62vFFUBIR-7c5XAYUVxDRX5Rs6QZR9hrBnUdMdVHNSHdjYtv7i28lCSng1iuWO620ML_wqJZYFge Hadoop源代码分析(一) 关键字: 分布式云计算 Google的核心竞争技术是它的计算平台.Google的大牛们用了下面5篇文章,介绍了它们的计算设施. GoogleCluster:http://research.g…
前段时间由于一些事情耽搁了,最近将raid1方面的各流程整理了一遍.网上和书上,能找到关于MD下的raid1的文档资料比较少.决定开始写一个系列的关于raid1的博客,之前写过的一篇读流程也会在之后加一些修改,我阅读的代码的linux内核版本是2.6.32.61.进入实验室的时间不长,关于磁盘管理等内核方面的理解不足或者有误之处,希望批评指正. 一.Raid1简介 Raid1又称为镜像磁盘阵列.由两块或者多块盘构成这样一个阵列,并且每块盘所存储的内容都是完全一致的.意思就是盘与盘之间互为镜像,而…
Android 消息处理源代码分析(1) 在Android中,通常被使用的消息队列的代码在文件夹\sources\android-22\android\os下,涉及到下面几个类文件 Handler.java Looper.java Message.java MessageQueue.java Message.java public final class Message implements Parcelable { public int what; //消息种类 public int arg1…
我们的目的是找到speedup-example在使用Parrot加速的原因,假设仅仅说它源于Context Switch的降低,有点简单了,它究竟为什么降低了?除了Context Switch外是否还有其它的performance counter也对提速有帮助?这些都是值得去思考的问题.先来看一下我们用来探索Parrot奥秘的程序speedup-example.cpp. 前言:RRScheduler::getTurn&RRScheduler::wait_t::wait speedup-examp…