失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > element tree不刷新视图_安卓从入门到进阶第五章(视图查看)

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

时间:2023-01-21 03:43:15

相关推荐

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

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

今天我们就来说说如何查看一个界面的视图。看不到进程,说明你用的不是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类型等等),去检索代码,找到代码位置,进行调整修改。

2Sdk\tools\bin的uiautomatorviewer.bat

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

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

从网上下载adt-bundle-windows-x86_64-0702 开发包,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不刷新视图_安卓从入门到进阶第五章(视图查看)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。