博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
View转化成bitmap保存成图片
阅读量:5818 次
发布时间:2019-06-18

本文共 1072 字,大约阅读时间需要 3 分钟。

hot3.png

case LAUNCH_ACTIVITY: {    final ActivityClientRecord r = (ActivityClientRecord) msg.obj;    r.packageInfo = getPackageInfoNoCheck(            r.activityInfo.applicationInfo, r.compatInfo);    handleLaunchActivity(r, null, "LAUNCH_ACTIVITY");
private void handleLaunchActivity(ActivityClientRecord r, Intent customIntent, String reason) {    Activity a = performLaunchActivity(r, customIntent);    if (a != null) {        r.createdConfig = new Configuration(mConfiguration);        reportSizeConfigurations(r);        Bundle oldState = r.state;        handleResumeActivity(r.token, false, r.isForward,                !r.activity.mFinished && !r.startsNotResumed, r.lastProcessedSeq, reason);    }}

比较重要的两个方法 一个 performLaunchActivity(),另一个是handleResumeActivity()

performLaunchActivity()中:

attach( )   // 创建window 其与Activity的显示相关

onCreate();   // setContentView( ) 解析xml中view 并与decorview产生关联

handleResumeActivity()中:

162206_9RYF_3342652.png

执行activity中的onResume方法,将WindowManager将DecorView添加到Window中

162405_FFsS_3342652.png

将decorview添加到ViewRootImpl中,并有decorview执行测量、布局、绘制等操作。

 

转载于:https://my.oschina.net/u/3342652/blog/1628371

你可能感兴趣的文章
rpm的常用用法
查看>>
php启动,重启,关闭命令
查看>>
Oracle 11g rac 生产环境部署详录
查看>>
让windowsxp系统不用路由器自动实现开机自动拨号
查看>>
Fedora 28 主题更换实践
查看>>
Win2008 R2 VDI动手实验系列之三:远程桌面会话主机配置
查看>>
MacOS 通过Terminal更改DNS
查看>>
第一次迭代开发心得
查看>>
jdbc,链接调用数据库的方法——例题
查看>>
C# 基础:ref和out的区别
查看>>
.htaccess FollowSymlinks影响rewrite功能
查看>>
jquery.ellipsis根据宽度(不是字数)进行内容截断,支持多行内容
查看>>
使用"动软代码生成器"制作自定义模板的参数表
查看>>
ABBYY FineReader 14助力2017,正式进入新纪元
查看>>
进程占用情况记录
查看>>
C#反射取得类的字段与方法信息
查看>>
LeetCode索引
查看>>
select下拉框的样式在浏览器上的兼容问题
查看>>
牛客小白月赛5 A 无关(relationship)
查看>>
在windows系统搭建并运行一个Flutter项目
查看>>