热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

AndroidStudio功能LayoutInspector检查视图层级、结构

减法、减法、减法,前俩天记录了一下DatabaseInspector,想起来还有一个LayoutInspector,索性一起记录一下~我记

减法、减法、减法,前俩天记录了一下 Database Inspector ,想起来还有一个 Layout Inspector ,索性一起记录一下 ~


我记得在前几年的时候,为了性能优化中的布局优化,我就记录了 通过Component Tree、Layout Inspector - Tree View、Hierarchy Viewer 多方位查看视图结构,里面也提到了Layout Inspector ,不过当时我用的是Android Studio3.0版本,现在用的是Android Studio4.1版本


        • 基本认知
        • 开启 Layout Inspector
        • Select Process 进程选取
        • Component Tree 布局层级
        • Attributes 视图详情
        • 扩展功能
          • 实时更新
          • 破解三方app布局结构
          • 有那么点用的...布局验证


基本认知

关于 Layout Inspector 主要提供了查看布局层级、布局详情的功能,关于布局性能方面的分析并没有给予支持...

Layout Inspector 启动成功后,你会发现主要分为三个部分


  • Select Process 进程显示区域
  • Component Tree 视图层级显示区域
  • Attributes 视图具体参数显示区域

开启 Layout Inspector

常规的启动方式主要有俩种,本质一样,入口不同罢了

启动方式1:View - Tool Windows - Layout Inspector
在这里插入图片描述
启动方式2:Tools - Layout Inspector
在这里插入图片描述
启动效果
在这里插入图片描述


Select Process 进程选取

首先连接设备,其次选取对应的项目进程即可 (手机上开启了几个debug项目就会显示几个项目进程)

我这里用的是OPPO的测试真机,同时后台开了三个debug项目
在这里插入图片描述
进程选取成功后的状态
在这里插入图片描述


Component Tree 布局层级

关于查看自己项目内的布局层级,仅需从content布局层级开始就可以了!

如果有兴趣的话,可以看看视图的整个传递顺序,如onTouch机制 从Activity - Window - PhoneWindow - DecorView 的一个视图顺序

短版
在这里插入图片描述
完整版
在这里插入图片描述


Attributes 视图详情

当选取具体布局后,可通过Attributes 查看布局的数据属性,挺全的,基本够用了

短版
在这里插入图片描述
完整版
在这里插入图片描述




扩展功能

需要了解,但是又不是那么刚需的操作?或许有的还挺有用的 - - ~


实时更新

实时更新的功能是很有必要的,它能动态监听你手机切换项目或者切换activity导致视图发生改变的状态,从而为你显示当前的布局效果


一般使用Layout Inspector 时,自动更新都是开启的,如果没有开启的话及时给 Live updates 打勾即可 ~
在这里插入图片描述


破解三方app布局结构

别想了,Layout Inspector 只支持分析debug包的项目app!同时意味着只能分析自己写的项目,或者一些不介意代码泄漏的项目包~

好吧,如果你想尝试一下,那么Root手机或模拟器看看能不能分析Release版本的App把


有那么点用的…布局验证

这个功能有那么点意思,你可以尝试通过 Load Overlay 将设计图加载到布局分析器中,进行对比
在这里插入图片描述
可动态调整设计图的透明度,看到不同状态下的一个视图效果
在这里插入图片描述


推荐阅读
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文详细介绍了MySQL表分区的创建、增加和删除方法,包括查看分区数据量和全库数据量的方法。欢迎大家阅读并给予点评。 ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 解决.net项目中未注册“microsoft.ACE.oledb.12.0”提供程序的方法
    在开发.net项目中,通过microsoft.ACE.oledb读取excel文件信息时,报错“未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序”。本文提供了解决这个问题的方法,包括错误描述和代码示例。通过注册提供程序和修改连接字符串,可以成功读取excel文件信息。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
author-avatar
庚的右翼cs神
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有