Component Tree(直观视图结构)

主要用于查看当前xml的层级结构,根布局为xml的根布局

1.选取Desgin
这里写图片描述
2.最终结果
这里写图片描述
3.扩展讲解Palette(翻译:调色板),个人认为主要作用于拖拽,不建议使用
这里写图片描述

Layout Inspector - Tree View(底层代码树形视图结构)

主要用于当前xml的总体布局,根布局为Phone Window,相比前者布局结构更完善

1.打开Layout Inspector工具

As3.0之前 - Tools - Android - Layout Inspector
这里写图片描述
As3.0之后 - Tools - Layout Inspector
在这里插入图片描述

2.执行流程
这里写图片描述

当运行的时候遇到这样的错误,请使用ADB关闭其他应用程序:Monitor、DDMS、Eclipse ,当然可以重启尝试,这里要记得系统会提示你让你允许调用调试权限,记得确定
这里写图片描述
3.选取对应的包名
这里写图片描述

4.最终结果
这里写图片描述

Hierarchy Viewer(可视化树形视图结构)

一种相对古老的工具了,兼容了Ecplise和As,最早的时候是通过DDMS进行启动的,后来As可以通过插件启动了 ~

据说AndroidStudio3.0、3.1之后此工具Android原开发团队将不再维护

  • 添加到你的 build.gradle

build.gradle(Project)

allprojects {
    repositories {
        google()
        jcenter()
        maven {url "https://jitpack.io"}

build.gradle(Module)

compile 'com.github.romainguy:ViewServer:017c01cd512cac3ec054d9eee05fc48c5a9d2de'
  • 清单文件添加权限
<uses-permission android:name="android.permission.INTERNET" />
  • 然后注册查看服务器到您想要检查的活动
public class MyActivity extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Set content view, etc.
        ViewServer.get(this).addWindow(this);
    public void onDestroy() {
        super.onDestroy();
        ViewServer.get(this).removeWindow(this);
    public void onResume() {
        super.onResume();
        ViewServer.get(this).setFocusedWindow(this);

如您没有设置前提条件,那么如博友文中所说一样,由于一直都是用真机开发,启动之后,发现没有看到应有的效果,出现了下面的错误:

2016-04-15 15:44:26 - hierarchyviewer]Unable to get view server version from device 2d2843d
[2016-04-15 15:44:26 - hierarchyviewer]Unable to get view server protocol version from device 2d2843d

那么可以尝试使用下方的解决方案,此方案来自Stack Overflow 的这篇文章:Android Debug Monitor层次结构视图不显示

解决步骤:

主要就是通过DDMS去查看视图结构,但是As3.0之前与As3.0之后启动DDMS的方式不太一样;
此篇粗略介绍,如想具体了解的可以查看我的另一篇文章 - DDMS调试之旅

  • As3.0之前 - 启动方式

1.AndroidStudio - Tools - Android - Andorid Device Monitor(设备监控)
这里写图片描述
2.打开后呈现的视图
这里写图片描述

3.因为初次进入的时候并没有Hierarchy View,所以我们需要进行添加
这里写图片描述
注:担心大图看不清楚,故放小图一张> <
这里写图片描述
4.最终效果
这里写图片描述

  • DDMS通用 - 启动方式

1.通过sdk - tools 激活工具
这里写图片描述

2.成功激活工具
这里写图片描述
注:如无视图查看器,可看下图操作
在这里插入图片描述

这种情况是在text模式下点击的右侧边栏的preview弹出的视图,在这个视图里也可以进行编辑,相应的变化也会在xml文件中保存,但这和attribute还有component... 显示下图,无法生成.li文件查看Component Tree,变成实时的Preview并功能点击操作,跟模拟器一样。File -> Settings 搜索。打开了之后,无法连接到视图。快速进入设置,取消勾选。,启用了嵌入式的功能。 翻译By Leelion6。关于 ConstraintLayout 的文章其实已经不少了,不过看到这篇文章写的很有趣,以及在翻译的过程中,感受到了不同文化环境下,写作思维的不同。最关键的是,这篇文章的内容很细致,对初学者比较友好,所以翻译过来以供需要的开发者去学习。如果需要进阶的用法欢迎去看郭霖等大神更深入一些的相关文章。 在本教程中,你将会使用ConstraintLayout从头开始构建一... uiautomatorviewer基本介绍 Android平台上的uiautomatorviewer工具已经存在很多年,不熟悉的朋友一定会觉得它的名字很怪异……,分开来看就清楚多了:UI Automator Viewer(中文直译:界面自动化 查看器),这个工具是测试框架UI Automator的配套工具(随该测试框架一同推出,专门用于查看布局层次结构),利用该工具可以查看当前Android设备屏幕上的控件信息,下方是我利用uiautomatorviewer工具截取的微信App的布局层次结构! 启动AndroidStudio报错:java.lang.RuntimeException: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'name' of com/android/tools/idea/welcome/Platform. must not be nullat com.intellij.id... Android窗口是根据显示屏幕来管理,每个显示屏幕的窗口层级分为37层,0-36层。每层可以放置多个窗口,上层窗口覆盖下面的。要理解窗口的结构,需要学习下WindowContainer、RootWindowContainer、DisplayContent、TaskDisplayArea、Task、ActivityRecord、WindowToken、WindowStateWindowContainer等类。 题意:给定一棵树,每一个节点都有一些属性以及他们的状态,然后给定q个询问,每个询问问节点A的某个属性的状态,如果没有就往上咨询,直到有为止,如果没有就输出“N/A”(题目强制在线操作)。 解法:可持久化线段树,先对属性离散化(我用的是map),线段树维护当前节点以及往上的每一个属性的状态就好了,直接裸地维护就好了。 #include <stdio.h> #include <stdlib.h> ViewViewGroupViewAndroid 中最基本的 UI 组件,在屏幕上绘制一块矩形区域。ViewGroup 是一种特殊的 View,它可以包含多个子 View 和子 ViewGroup,用于放置、组织、管理视图结构。常用控件和布局的继承结构:LinearLayout 和 RelativeLayout 性能对比Android Project 默认生成的 avtivity_ma... 新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树) 从Altair更新的2019版本开始,在Model模型树中找不到Assemblies了,这样导致好多用户一直在用14或者17版本,其实这次更新不是把这个功能取消掉了,是官方改了默认设置。 对于汽车机车、航空航天的用户来说,操作复杂大模型,没有一个好用的模型管理系统很棘手,影响工作效率;但是对于一些较为简单的模型来说,模型部件较少,装配关系单一,使用带层级关系的模型管理反而让用户更加烦恼,所以官方把这个模型树的