鸿蒙开发:了解布局分析ArkUI Inspector

简介: ArkUI Inspector,知名其意,就是UI检查,它可以让开发者在DevEco Studio中快速的查看一个应用在模拟器或者真机上的UI显示效果,并且可以通过查看多次操作后的界面状态,来快速的分析定位UI界面存在的问题。

前言


本文基于DevEco Studio 5.0.5 Release


之前的文章讲述过测试工具DevEco Testing,提到过里面有一个功能,页面DOM树获取,可以分析某一款应用的UI布局结构,便于我们查找UI界面存在的问题,当时感到惊叹不已,但是使用它,还需要进行下载,两个多G,如果说仅仅为了UI布局分析,确实有点大材小用,其实,同样的功能,DevEco Studio已经为我们提供了,本文就带着大家一起了解一下,布局分析利器,ArkUI Inspector。


什么是ArkUI Inspector


ArkUI Inspector,知名其意,就是UI检查,它可以让开发者在DevEco Studio中快速的查看一个应用在模拟器或者真机上的UI显示效果,并且可以通过查看多次操作后的界面状态,来快速的分析定位UI界面存在的问题。


功能入口


入口在DevEco Studio中的底部一行菜单中,如下图所示:



快速使用


点击底部的ArkUI Inspector选项之后,可以在设备应用列表中,选择当前显示在设备前端的UI进程,需要注意的是,你的手机或者模拟器必须在线状态下,并且应用也已经启动。



点击需要检查应用的进程,就可以查看到当前置于前台的页面。



左侧组件Dom数结构


左侧的区域,就可以看到当前页面布局的页面名字和组件使用信息,针对页面中的层级,可以说是一览无余。



切换页面


当你切换了页面,可以通过刷新按钮来更新视图,点击之后,页面会自动切换,方便我们快速的分析不同页面的层级结构。


同步更改


在左侧点击组件或者在UI界面上点击视图,都可以同步进行选择,比如下面,我在左侧选中了Image组件,那么UI界面中也会选择图片视图,同样,你在界面中点击视图,左侧也会同步变动。



右侧组件属性信息


在左侧或者中间的界面选择一个组件后,在右侧就会展示出这个组件的所有属性信息,比如宽高,xy坐标,背景,margin,padding等等所有的属性信息,方便我们针对当前的UI布局做细化分析。



显示组件树节点信息


如果你想要在左侧查看当前的组件节点信息,你可以勾选组件树信息的配置项Show Tree Statistics进行打开。



打开之后,在左侧的组件悬停一会,便可以查看了。


UI界面快照


如果你的设备未在线状态下,也就是没有模拟器或者真机,ArkUI Inspector也支持导出及导入应用UI界面快照,脱离设备查看应用UI界面显示效果。



箭头往右的图标,可以将应用UI界面快照导出到本地,箭头往左的图标可以导入本地的应用UI界面快照。


导出的快照是.arkli文件,如下效果:



有了快照,你就可以通过往左的箭头图标,选择本地的快照进行查看了,它是直接在IDE中打开的,和在底部设备查看是一模一样的。



UI组件源码跳转


这个功能就厉害了,你可以通过ArkUI Inspector左侧的UI组件信息,双击直接进入到当前的组件代码位置,但是,需要开启这个功能。


点击要运行的模块之处,点击第一个Edit Configurations,如下图所示:



把“Enable DebugLine”进行勾选,开启源码跳转功能,点击OK保存后,需要重新运行工程。



这样就实现了源码跳转功能,如下图所示,双击左侧的组件,便可以直达它的源码之处,并且会被边框选中,非常的方便。



相关总结


目前ArkUI Inspector有一定局限性,首先仅支持运行在前台的应用,也就说,如果你的应用未启动,未在前台,那么进程是无法选择的,也就不能查看UI视图,以上的条件也就意味着,仅支持全屏应用或者焦点在前台的窗口,并且呢,也仅支持Stage工程的项目,由于是UI视图分析,那么同样也不支持应用市场上架的商用签名应用。


总之来说,对于我们分析UI界面存在的问题,边距啊,层级结构啊等等,ArkUI Inspector还是有着非常大的方便的。


本文标签:鸿蒙开发工具/DevEco Studio


相关文章
|
2月前
|
存储 IDE 定位技术
【HarmonyOS 5】鸿蒙组件&模板服务详解 - 助力高效开发的利器
在移动应用开发领域,效率与质量始终是开发者追求的核心目标。鸿蒙系统作为新兴的操作系统,为开发者提供了丰富且强大的开发资源,其中鸿蒙组件&模板服务更是成为开发者快速构建高质量应用的得力助手。
109 0
|
2月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:外卖App
仓颉语言实战分享,教你如何用仓颉开发外卖App界面。内容包括页面布局、导航栏自定义、搜索框实现、列表模块构建等,附完整代码示例。轻松掌握Scroll、List等组件使用技巧,提升HarmonyOS应用开发能力。
|
2月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:健身App
本期分享一个健身App首页的布局实现,顶部采用Stack容器实现重叠背景与偏移效果,列表部分使用List结合Scroll实现可滚动内容。代码结构清晰,适合学习HarmonyOS布局技巧。
|
1月前
|
存储 SQL 前端开发
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发
本节以“账本”为例,使用关系型数据库接口实现账单的增、删、改、查操作。通过创建ArkTSRdb应用,演示如何操作RdbStore进行数据管理,并结合界面按钮实现交互功能。
76 0
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发
HarmonyOS NEXT仓颉开发语言实战案例:图片预览器
本文介绍了如何使用仓颉语言实现图片放大预览器。通过弹窗组件`CustomDialogController`与`Swiper`容器结合,实现全屏图片浏览效果,支持多图切换与点击关闭功能,适配动态广场场景下的图片预览需求。
|
2月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:动态广场
本文介绍了使用仓颉语言开发类似朋友圈的动态广场页面,包含导航栏和状态列表。通过Column、Row、List等组件实现页面结构,并使用Grid适配图片展示。结合数据绑定与组件化思想,完成动态内容展示。
|
2月前
|
前端开发
HarmonyOS NEXT仓颉开发语言实现画板案例
本文介绍了使用仓颉开发语言实现画板功能的案例,通过Canvas组件实现画布绘制,并利用贝塞尔曲线使画笔跟随触摸轨迹生成平滑曲线。内容包含画布初始化、触控事件处理及清空功能,展示了仓颉语言在图形绘制中的应用技巧。
|
2月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:银行App
仓颉语言银行App项目分享,页面布局采用List容器,实现沉浸式体验与模块化设计。顶部资产模块结合Stack与Row布局,背景图与内容分离,代码清晰易懂;功能按钮部分通过负边距实现上移效果,圆角仅保留顶部;热门推荐使用header组件,结构更规范。整体代码风格与ArkTS相似,但细节更灵活,适合金融类应用开发。
|
2月前
|
缓存 JavaScript IDE
鸿蒙开发:基于最新API,如何实现组件化运行
手动只是让大家了解切换的原理,在实际开发中,可不推荐手动,下篇文章,我们将通过脚本或者插件,快速实现组件化模块之间的切换,实现独立运行,敬请期待!
105 0
鸿蒙开发:基于最新API,如何实现组件化运行
|
2月前
|
开发者
鸿蒙开发:资讯项目实战之项目初始化搭建
目前来说,我们的资讯项目只是往前迈了很小的一步,仅仅实现了项目创建,步虽小,但概念性的知识很多,这也是这个项目的初衷,让大家不仅仅可以掌握日常的技术开发,也能让大家理解实际的项目开发知识。
鸿蒙开发:资讯项目实战之项目初始化搭建