Android学习
文章平均质量分 87
从源码的角度学习Android
Gavin郭
我只想做一个快乐的开发者!
展开
-
View源码分析之事件分发机制
前言事件分发机制主要是为了处理用户触摸屏幕产生的事件,因为每个页面都是由多个View组合而成的,那么具体由谁来处理这个事件呢,接下来我们来分析一下。概念触摸事件也就是对MotionEvent事件的分发过程,即当一个MotionEvent产生以后,系统需要把这个事件传递给具体的view。MotionEvent包含触摸的动作、位置等;这个类里包含了一系列的事件,事件的类型有触摸状态具体动作ACTION_DOWN按下 手势开始ACTION_UP抬起 手势结束ACTION原创 2021-02-20 13:38:00 · 89 阅读 · 0 评论 -
View源码分析之绘制流程
目录View的绘制流程View的事件分发View的绘制流程View 的绘制流程是 measure -> layout -> draw,这个大家都非常熟悉。接下来带领大家来分析下源码(基于SDK 30)既然开始说到了 View 的绘制流程,那这个流程是什么时候触发的呢?其实是在ActivityThread.handleResumeActivity中开始的。这里会调用wm.addView 来添加 DecorView,其中wm 是 WindowManagerImplWindowMana原创 2021-02-20 13:37:26 · 210 阅读 · 0 评论 -
Handler源码分析及问题解答
源码分析Handler是Android中的消息处理机制,是一种线程间通信的解决方案。下面带领大家来分析下源码(基于SDK 30)。我们知道程序的入口是ActivityThread的main方法,这里做了什么呢我们可以看到先调用了Looper.prepareMainLooper()方法,然后获取当前线程的Handler,最后调用Looper.loop()。让我们先来看下Looper.prepareMainLooper()。可以看到先是调用prepare方法创建当前线程的Looper并存放到线原创 2021-02-20 09:26:58 · 132 阅读 · 0 评论 -
Glide使用详解(一)
请标明出处:http://blog.csdn.net/shangmingchao【商明超的博客】目录(?)[+]一. 下载在build.gradle中添加依赖: compile 'com.github.bumptech.glide:glide:3.7.0'11需要support-v4库的支持,如果你的项目没有support-v4库(转载 2016-06-12 10:24:58 · 612 阅读 · 0 评论 -
Android SwipeRefreshLayout结合WebView使用实现以及可能遇到的问题
最近一直在整理以前做项目遇到的一些问题,今天正好项目需求要加这个,就给加上了,实现的过程中还遇到一些不大不小的坑,怕到时候忘了,就抽空记录下来,好了,闲话不多说,该进入正题了。 首先我自定义了一个webview类public class SwipeWebView extends WebView { private MySwipeRefreshLayout swipeRefre原创 2017-03-23 22:26:55 · 440 阅读 · 0 评论