一、TouchMode Android支持多种交互方式:D-pad、滚动球、触摸屏等等。这些交互方式可以分为两类:TouchMode和非TouchMode。TouchMode...
一、TouchMode Android支持多种交互方式:D-pad、滚动球、触摸屏等等。这些交互方式可以分为两类:TouchMode和非TouchMode。TouchMode...
相关知识 依赖注入 Dependency Injection,简称DI; 依赖项注入可以使代码解耦,便于复用,重构和测试 什么是依赖项注入 类通常需要引用其他类,可通过以下三...
前言 朋友入手了一台新款M1的Macbook Pro,成功编译AOSP,分享一下经验 AOSP on mac 准备工作: git Python 3 获取代码,切换到清华源 M...
前言 演示使用FlexboxLayoutManager给RecyclerView使用,关于FlexBoxLaytout的介绍可以参考FlexboxLayout的认识与使用 第...
简介 它类似于LinearLayout与RelativeLayout。不同的是它具有换行特性,可以将子视图进行自动换行的效果(看下面运行效果就一目了然)。官方地址 获取 需要...
Kotlin Coroutines(协程) 完全解析系列: Kotlin Coroutines(协程) 完全解析(一),协程简介 Kotlin Coroutines(协程) ...
Kotlin Coroutines(协程) 完全解析系列: Kotlin Coroutines(协程) 完全解析(一),协程简介 Kotlin Coroutines(协程) ...
陆陆续续已经写了好多了,这个计划图之后再调整吧。 Android图形系统学习框架:Android图形系统(一)-Window加载视图过程Android图形系统(二)-Deco...
Android应用程序与SurfaceFlinger服务是运行在不同的进程中的,因此,它们采用Binder进程间通信机制来进行通信。 但是我们知道一个Android应用程序可...
接上篇,WindowManager addView流程来: ViewRootImpl走setView 我们已经讲了mWindowSession.addToDisplay这条线...
经过上一篇的概览,我们对Android图形系统渲染流程有了一个大致的了解,这篇开始做细节分析。那么先来总结下app与SurfaceFlinger服务连接过程。 经过前面的ac...
从本篇文章开始,我将对Android比较复杂的图形系统进行分析,开篇我们先对图形系统做个概览,先不对代码做具体分析。 文章从如下三个层次进行讲解.其中每一层之间的数据传递是使...
本篇文章对之前3篇描述的Activity、Window、View关系做个粗略的总结 在 Activity 创建过程中执行 scheduleLaunchActivity() 之...
接上篇 绘制优化-原理篇2-DecorView布局加载流程 讲到的ViewRootImpl,在ViewRootImpl的setView()方法里主要做两件事:1.执行requ...
上篇我们了解了window的创建过程和添加视图的流程,但是顶级视图DecorView是怎么被加载的呢?其实这个过程非常简单,分析下setContentView的过程,一切就明...
本篇开始进行了新的专题:绘制优化,初步打算分两部分来写,一部分是原理机制篇,做优化,你原理机制都不清楚谈何优化,所以知识储备是十分有必要的,另外一部分就是优化实践篇。(先是这...
在Android4.1之后增加了Choreographer机制,用于同Vsync机制配合,统一动画、输入和绘制时机。本文以绘制为例来简单学习下Choreographer。 一...
1. 前言 对于管理人员和开发人员来说,一个好的终端可以给你带来效率飞速的提升。 你还在用这样的 bash 吗? 或着用这样的 终端? 是时候打造一款属于你自己的终端配置啦!...