首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
面试
订阅
MVVMSmart_湖边雨
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
从 XML 到 View 显示在屏幕上,都发生了什么?
目前当我们写页面时,布局都是写在XML里的,我们可以思考下:布局从XML到显示到屏幕上,都发生了什么,可以分为哪几个部分?
面试官:View.post() 为什么能够获取到 View 的宽高 ?
今天的文章会比较轻松,相比前面几篇没有那么大段的源码要啃。关于获取 View 的宽高,我们先来一段测试代码: 在 onCreate() 和 onResume() 中是无法获取到宽高的,而 View.post() 回调中可以。从日志打印顺序可以看出来,View.post() 回调…
Android:一篇文章带你完全梳理自定义View工作流程!
1. 储备知识 2. 绘制准备 3. 绘制流程概述 4. 详细介绍 至此,关于自定义View的工作流程讲解完毕。 5. 自定义View的步骤 6. 实例讲解 7. 总结 本文全面总结自定义View 的原理。至此,关于自定义View的绘制流程您应该非常熟悉了。关于自定义View的…
屏幕上内容究竟是怎样画出来的 —— Android View 工作原理详解
前面已经分析了一个 App 从点击它的图标到 Activity 的 onCreate 等生命周期被调用的整个流程,本文将继续基于 Android Nougat 从源码的角度来进一步分析整个过程。
Android解析WindowManagerService(一)WMS的诞生
此前我用多篇文章介绍了WindowManager,这个系列我们来介绍WindowManager的管理者WMS,首先我们先来学习WMS是如何产生的。本文源码基于Android 8.0,与Android 7.1.2相比有一个比较直观的变化就是Java FrameWork采用了Lam…
Android Framework启动流程浅析
对于Android开发,干上几年后,都要进阶,或者直接转行了。如果你还在干Android,想要进阶 对Framework的了解是必不可少的过程,下面就开始进入今天的主题吧。 我们知道,对于任何程序语言而言,入口一般都是main函数。 将从本文中找到以上答案,如果已经熟悉了此过程…
Android APP/AMS/WMS之间交互总结
掌管着所有App进程的启动,App四大组件的启动,App之间及App内部页面之间切换和各种组件的生命周期,AMS不控制窗口的显示,只控制各种组件的创建和运行。 掌管着所有App窗口的层叠计算。WMS被App用来显示自己的窗口,但WMS自己不具备显示能力,WMS只负责综合系统中所…
这一次,彻底搞懂Java内存模型与volatile关键字
多线程并发是Java语言中非常重要的一块内容,同时,也是Java基础的一个难点。说它重要是因为多线程是日常开发中频繁用到的知识,说它难是因为多线程并发涉及到的知识点非常之多,想要完全掌握Java的并发相关知识并非易事。也正因此,Java并发成了Java面试中最高频的知识点之一。…
Java & Android 集合框架须知须会(3)
本篇文章再来分析下 SparseArray 和 ArrayMap 这两个 Android 系统独有的集合框架类,这两个容器在使用上类似于 HashMap,都是用于存储键值对。由于 Android 系统
Android应用启动流程
相关源码太多,不利于阅读和记忆,因此本文时序图为主,重要源码为辅。请注意,本文讲的是应用根Activity的启动流程,和普通Activity的启动流程有些不一样。 作为一个应用层开发者,掌握应用启动流程是必须的。 如图当我们点击QQ的图标时,Launcher会调用startAc…