安卓学习过程中,很多时候需要查看视图,去定位问题,通过找寻的节点,进行代码检索,最终定位到流程,进行修改,分析源码。

今天我们就来说说如何查看一个界面的视图。看不到进程,说明你用的不是eng版本,或者你的app不是调试版本。

(系统开发,不用eng版本,你怎么发挥工具强大的能力)

1我们使用Android Studio自带的工具

在菜单栏Tools ->Android -> Layout Inspector 打开即可

在打开后,选择当前打开的界面(这里我打开了图库,我们就看下图库的界面)

选中 com.android.gallery3d,点击确定就会出来当前界面的视图信息。

1是ViewTree ,通过这个可以看到xml的对应布局信息,点击各个View,在2上面会显示出来对应View的区域,3会显示这个View的对应属性,绘制信息。

通过点击1或者2的对应位置,找到你所关注的View,通过3的显示,找到属性信息,比如text 和id信息

如此可以分析这个界面的所有View的信息,然后通过一些特征信息(text id 或者自定义的view类型等等),去检索代码,找到代码位置,进行调整修改。

2 Sdk\tools\bin的uiautomatorviewer.bat

试用了下,没有显示出来界面,只有视图列表信息。这个我平时也不用,就不做深入研究为什么不出来界面了。

3 我们的主角,我平时用的最多的工具hierarchyviewer。虽然怀旧,但是经典。

从网上下载adt-bundle-windows-x86_64-20140702 开发包,sdk\tools\hierarchyviewer.bat 运行起来。

这里显示的信息,是window的title信息,我们可以看到状态栏和虚拟按键的window也显示了出来。

DockedStackDivider 这个是分屏的那个view,通过代码搜索这个title,就能找到代码位置。

通过目录树,可以知道这个是在SystemUI的源码里面。

我们这里就看下GalleryActiivty的视图。选中这个,点击Load ViewHierarchy进入界面。

1 大视图的view信息,可以拖动寻找你要的界面,双击会出现对应的视图界面。

2 小视图的view信息,可以快速点击选中一个区域,然后使用1去寻找目标view。

3选中的view的相关信息。

4 整体视图显示,可以勾选show extras,显示更多信息。

5 放大缩小区域,20%-200%,还可以使用id进行搜索

6 回到主界面,重新选择界面。

我们一般借用这个界面去定位我们的目标view,使用的方式是,从左向右查找,从父类快速的收敛,定位目标View的位置。

通过定位到View之后,我们双击这个view

这里可以操作上面的On White或者On Black 这个是用来设定背景色的。通过选择黑色白色,可以查看这个View是否真的有背景色。

如果选中白的,界面显示为白,选中黑的,显示黑,意味这个view背景是透明的。这个为方便定位颜色到底是哪个父类设定的,很方便。

这里我们再来看看上面的菜单:

这边常用的就是Profile Node,点击后界面很多view下面出现三个点,这个从左到右便是,测量,布局,绘制所耗的时间。红点和黄点表示速度慢,而蓝绿则相对好一些。

不知你学会了吗?希望课后大家能够实际使用起来,多看看它的属性信息,那里可以看到布局信息,是否绘制,是否透明,主题的信息,都是帮助我们定位问题的方式。

—————END—————

element tree不刷新视图_安卓从入门到进阶第五章(视图查看)相关推荐

  1. element tree不刷新视图_不懂Linux Device Tree,被新人嘲笑之后,含泪写完

    1 前言 关于设备树,之前就已经接触过很久了,但是本着够用的原则,基本上都是看着文档CRUD,处于一种不求甚解的状态,没有进行全面性的总结,导致很多知识点都是比较碎片状,没有形成一个系统的知识网络,最 ...

  2. element tree不刷新视图_我不告诉你的话,你不会知道iPad原来也有这么多窍门,学起来...

    现在很多有条件的人,在给自己配备了手机电脑之后,还喜欢配多一部平板电脑作为休闲娱乐用,人们最常入手的平板产品,就是苹果的iPad了.现在除了拿来日常煲剧.玩玩游戏,iPad也被越来越多人拿来办公,存在 ...

  3. element tree不刷新视图_随手“一片”SCI,Qiime2扩增子处理流程确定不了解一下?(一)...

    文章目录 conda安装qiime2 导入数据 制作Manifest和Metadata表 Import数据 查看原始数据质量 DADA2去噪.去嵌合体和生成OTU 构建进化树 绘制稀释曲线 计算物种多 ...

  4. 安卓从入门到进阶第六章(dumpsys初探)

    后续还是会写一写关于安卓的知识,只是写的就按照轻快,实战为主,不做过多原理的剖析了.今天就来处理一个问题, 如何快速定位当前手机屏幕上某个区域上是哪个应用绘制的? 如下为解决方案: 使用 adb sh ...

  5. element tree不刷新视图_Vue项目布署后,刷新页面404的真正原因找到了

    从一篇日记说起 我是一个小前端,我有写日记的习惯 2020年10月17 天气 晴 今天天气不错,心情也跟着好起来了 辛辛苦苦加班两个星期终于完成了产品需求,到了要上线的时候了,嘴里也不知不觉哼起了&q ...

  6. element tree不刷新视图_00后都开始找工作了,这些都不懂还聊个啥?

    大家好,我是小跟班! 进来的同学自己找位置坐下, 我要开始给大家科普了. 不知道时候开始, 连95后们都变成了00后眼中的"老年人"... 一声声"叔叔阿姨", ...

  7. element tree不刷新视图_BIM小技巧001 | Revit如何在平面视图中看见新增的标高?

    软 件 小 技 巧 | foreword 前   言 很多小伙伴在学习BIM软件的时候多多少少会遇到软件功能不熟悉.不理解.网上文字教程复杂难懂的情况,那么小编通过筛选整合网络资源.书本知识点.工作实 ...

  8. 安卓从入门到进阶第九章(自动亮屏)

    安卓从入门到进阶第六章(dumpsys初探) 我希望文章是给出一个思路,让你能够跟着这个,找到框架,然后自行分析,总结,得到知识. 阅读代码,是需要长时间的训练,从问题出发,就跟从项目出发一样,在实战 ...

  9. dt测试软件的学习心得,无线网络优化dt测试心得_适合新手入门,高手进阶_5年项目经验实战经验.docx...

    无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 路测中不常见的问题和个人心得 1.深井子镇投诉测试报告 ...

  10. Python编程从入门到实践第五章部分习题

    Python编程从入门到实践第五章部分习题 5-8 5-9` names = ['admin','zhang','li','zhao','song'] for name in names:if nam ...

最新文章

  1. 转载 - sql分页优化
  2. 【C#】第3章学习要点(三)--常用类和结构的用法
  3. 计算机中丢失sense3.dll,sense3.dll
  4. 关于JQUery.parseJSON()函数的知识札记
  5. android进程间通信:使用AIDL
  6. 【渝粤题库】陕西师范大学164204 供应链与物流管理 作业
  7. 手把手教你用好LINQ to SQL(1)
  8. 计算机文本处理竞赛题目,文字处理竞赛题目(word2010).pdf
  9. LeetCode:砖墙【554】
  10. js正则表达式验证密码
  11. 使用VS 2019,.NET Core 3和Web API创建ASP.NET Core Blazor CRUD应用程序
  12. Hive SQL中的concat、concat_ws、concat_group列转行,行转列
  13. HighCharts:隐藏最下方logo
  14. 计算机科学的方法论有三个过程,计算机科学与技方法论3.ppt
  15. 浏览器打开页面的几种方式
  16. MME连几个eNB的问题
  17. C语言程序设计会员计费系统,C语言课程设计酒店房间登记与计费管理系统总结报告...
  18. RLException: [xx.launch] is neither a launch file in package [x] nor is [x] a launch file name的解决方法
  19. 如何进行SYN攻击防范
  20. 给大家分享一款由PHP+MYSQL搭建的外卖小程序源码

热门文章

  1. 数学建模:传染病模型
  2. 《HBase权威指南》读书笔记4
  3. 分享Web前端性能优化的实用技巧
  4. 测试声音延迟的软件,“Latency Test”详细操作流程,一款测试TWS耳机延迟的软件...
  5. 数学建模题目及答案matlab,MATLAB数学建模习题.doc
  6. FOC电机控制之SVPWM原理与实现
  7. java8 垃圾回收算法_Java垃圾回收机制算法详解
  8. sqlyog注册码激活
  9. account.php,account.php
  10. 装机员PE工具(UEFI+UD双启动)+装机员系统合集(Win 7+Win 10)