回答
在Hamibot中获取当前页面结构可以通过以下方法实现:
// 文档地址 https://docs.hamibot.com/
// 确保无障碍服务已开启
if (!auto.service) {
toast("请先开启无障碍服务");
exit();
}
// 获取当前活动窗口的根布局元素
var root = auto.rootInActiveWindow;
if (root) {
// 遍历并打印布局结构
printLayout(root, 0);
} else {
toast("无法获取页面布局");
}
// 递归打印布局信息的函数
function printLayout(node, depth) {
var indent = " ".repeat(depth);
var info = node.className() + " " + node.bounds();
console.log(indent + info);
for (var i = 0; i < node.childCount(); i++) {
var child = node.child(i);
if (child) {
printLayout(child, depth + 1);
}
}
}
关键点说明:
auto.rootInActiveWindow获取当前活动窗口的根布局元素- 使用递归方式遍历所有子元素
- 每个元素会显示类名和边界坐标信息
- 缩进层级表示元素在布局中的深度关系
如果需要更详细的信息,你还可以获取元素的text、desc、id等其他属性。这个结构可以帮助你了解页面布局,便于编写精准的自动化脚本。
ℹ️ 本回答由 AI 生成,内容仅供参考