回答
Hamibot提供了两种主要的点击操作方式:基于控件的自动化和基于坐标的自动化。下面详细介绍:
基于控件的点击操作
这种方式通过识别屏幕上的控件来实现点击,是最推荐的方式:
// 文档地址 https://docs.hamibot.com/
// 通过文本内容点击
text('发送').findOne().click();
// 通过ID点击
id('submitButton').findOne().click();
// 通过类名点击
className('Button').text('确定').findOne().click();
// 点击特定位置的相同文本(0表示第一个)
click("啦啦啦", 0);
// 判断控件是否存在再点击
if (id('menu').exists()) {
id('menu').click();
}
// 对于不可点击的控件,获取其位置后点击中心点
var widget = id('nonClickableItem').findOne();
click(widget.bounds().centerX(), widget.bounds().centerY());
基于坐标的点击操作
当控件无法识别时,可以使用坐标点击:
// 文档地址 https://docs.hamibot.com/
// 设置屏幕分辨率适配(脚本设计时的分辨率)
setScreenMetrics(1080, 1920);
// 点击指定坐标(x, y)
click(500, 1000);
// 滑动操作
swipe(500, 1500, 500, 500, 500); // 从(x1,y1)滑动到(x2,y2),500ms
实用技巧
-
组合条件精确定位:
className("ImageView").depth(10).findOne().click(); -
等待控件出现后再操作:
text("加载完成").waitFor(); click("确定"); -
处理列表中的项目:
// 获取第一个列表项并点击 className("ListView").findOne().child(0).click();
基于控件的自动化更稳定可靠,建议优先使用。只有在控件无法识别或特殊情况下才使用坐标点击,因为坐标点击容易受屏幕分辨率影响。
如果需要更精确地了解某个应用的控件结构,可以使用Hamibot的"布局分析"功能来查看界面元素的属性。
ℹ️ 本回答由 AI 生成,内容仅供参考