AIGameAIGame
首页
API文档
UI框架
下载软件
首页
API文档
UI框架
下载软件
  • API文档

    • $global - 全局函数
    • $act - 手势动作
      • 01.手势动作 - $act
      • 02.节点选择器 - UiSelector
      • 03.节点 - Node
    • $ag - 图色框架
    • $app - 应用操作
    • $arc - 悬浮菜单按钮
      • 01.悬浮菜单 - $arc
      • 02.悬浮容器 - MenuBody
      • 03.菜单按钮 - MenuItem
    • $bus - 消息总线
    • $color - 颜色操作
    • $crypt - 加密算法
    • $date - 日期工具
    • $device - 设备信息
    • $ext - dex,jar,so文件加载
    • $draw - 全局绘制
    • $engine - 脚本引擎
      • 01.任务信息 - JsTaskInfo
      • 02.脚本对象 - $task
    • $fc - 文件选择器
    • $file - 文件操作
    • $floaty - 悬浮窗
      • 01.可调节悬浮窗 - AdjFloaty
      • 02.系统级悬浮窗 - SysFloaty
      • 03.应用级悬浮窗 - AppFloaty
    • $img - 图片操作
    • $log - 日志框架
    • $ocr - 文字识别
    • $permit - 权限工具
    • $qr - 二维码工具
    • $res - 资源管理器
    • $root - ROOT与Shell命令
    • $screen - 屏幕操作
    • $storage - 应用内存储
    • $str - 字符串工具类
    • $sys - 系统操作
    • $thread - 并发编程
    • $tip - 对话框
    • $tts - 文字阅读
    • $yolo - 目标检测
    • $yolox - 目标检测

UiSelector

  • 更新时间:2025-08-02 14:23:36

UI选择器

界面的元素有很多,但不一定都是我们要找的那个节点,因此我们需要一些筛选条件过滤掉这些节点。

UI选择器主要用来过滤界面元素,并且选中我们想要的元素。所以在使用的时候我们需要两类方法:(1).筛选元素;(2).选中元素;

//(1)筛选元素
let selector = $act.selector() // 创建UI选择器
     .text("登录") //筛选文本是"登录"的元素
     .cls("android.widget.Button") //筛选类名为"android.widget.Button"的元素
     .pkg("org.aigame.pro") //筛选包名为"org.aigame.pro"的元素
     .desc("点击登录"); //筛选描述是"点击登录"的元素
//(2)选中节点
let node = selector.findFirst(); // 查找一个节点
//其实上面的代码可以直接写成:
let node = $act.selector()
     .text("登录") //筛选文本是"登录"的元素
     .cls("android.widget.Button") //筛选类名为"android.widget.Button"的元素
     .pkg("org.aigame.pro") //筛选包名为"org.aigame.pro"的元素
     .desc("点击登录") //筛选描述是"点击登录"的元素
     .findFirst(); // 查找一个节点

screen(transCut, vertCut, index)

屏幕区域

按照屏幕进行切割,在切割的范围中查找元素

  • 参数 : transCut {int} 横向切割数
  • 参数 : vertCut {int} 纵向切割数
  • 参数 : index {int} 第几个区域
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

clickable(able)

可点击的

  • 参数 : able {boolean} 是否可点击
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

longClickable(able)

可长按的

  • 参数 : able {boolean} 是否可长按
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

enabled(able)

可用的

  • 参数 : able {boolean} 是否可用
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

selected(able)

选中的

  • 参数 : able {boolean} 是否选中
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

scrollable(able)

可滚动的

  • 参数 : able {boolean} 是否可滚动
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

checkable(able)

可勾选的

  • 参数 : able {boolean} 是否可勾选
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

checked(able)

勾选的

  • 参数 : able {boolean} 是否勾选
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

region(x, y, w, h)

范围

  • 参数 : x {int} x坐标
  • 参数 : y {int} y坐标
  • 参数 : w {int} 宽度
  • 参数 : h {int} 高度
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

regionHas(x, y, w, h)

输入的范围包含了控件范围

  • 参数 : x {int} x坐标
  • 参数 : y {int} y坐标
  • 参数 : w {int} 宽度
  • 参数 : h {int} 高度
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

regionInside(x, y, w, h)

输入的范围在控件范围的里面

  • 参数 : x {int} x坐标
  • 参数 : y {int} y坐标
  • 参数 : w {int} 宽度
  • 参数 : h {int} 高度
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

multiLine(able)

多行的

  • 参数 : able {boolean} 是否多行
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

drawOrder(order)

绘制顺序

  • 参数 : order {int} 绘制顺序
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

desc(desc)

描述

  • 参数 : desc {String} 描述
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

descHas(desc)

描述包含

  • 参数 : desc {String} 描述
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

descStart(desc)

描述开头

  • 参数 : desc {String} 描述
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

descEnd(desc)

描述结尾

  • 参数 : desc {String} 描述
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

windowId(id)

窗口id

  • 参数 : id {String} id
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

id(id)

资源id

  • 参数 : id {String} id
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

idHas(id)

资源id包含

  • 参数 : id {String} id
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

idStart(id)

资源id开头

  • 参数 : id {String} id
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

idEnd(id)

资源id结尾

  • 参数 : id {String} id
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

tip(tip)

提示信息

  • 参数 : tip {String} tip
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

tipHas(tip)

提示信息包含

  • 参数 : tip {String} tip
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

tipStart(tip)

提示信息开头

  • 参数 : tip {String} tip
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

tipEnd(tip)

提示信息结尾

  • 参数 : tip {String} tip
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

pkg(packageName)

包名

  • 参数 : packageName {String} 包名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

pkgHas(packageName)

包名包含

  • 参数 : packageName {String} 包名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

pkgStart(packageName)

包名开头

  • 参数 : packageName {String} 包名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

pkgEnd(packageName)

包名结尾

  • 参数 : packageName {String} 包名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

cls(className)

类名

  • 参数 : className {String} 类名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

clsHas(className)

类名包含

  • 参数 : className {String} 类名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

clsStart(className)

类名开头

  • 参数 : className {String} 类名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

clsEnd(className)

类名结尾

  • 参数 : className {String} 类名
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

text(text)

文本

  • 参数 : text {String} 文本
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

textHas(text)

文本包含

  • 参数 : text {String} 文本
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

textStart(text)

文本开头

  • 参数 : text {String} 文本
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

textEnd(text)

文本结尾

  • 参数 : text {String} 文本
  • 返回 : {UiSelector} 自己
  • 版本 : 1.0.0

findAll()

查找全部

  • 返回 : {Node[]} 找到的集合
  • 版本 : 1.0.0

find(index)

查找指定

  • 参数 : index {int} 第几个,如果index在集合的范围内,就返回index对应的控件,否则返回第一个
  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

findFirst()

查找第一个

  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

findLast()

查找最后一个

  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

waitAll()

等待出现任意一个

  • 返回 : {Node[]} 找到的控件集合
  • 版本 : 1.0.0

waitAll(failCallback)

等待出现任意一个

会按照默认的等待次数来等待控件出现,当然你可以通过setWaitDur()和setWaitTime()来配置这些参数

  • 返回 : {Node[]} 找到的控件列表
  • 版本 : 1.0.0
let nodes = $act.selector().text("登录").waitAll();

wait(index, failCallback)

等待出现

  • 参数 : index {int} 第几个,如果index在集合的范围内,就返回index对应的控件,否则返回第一个
  • 参数 : failCallback {()=>{}} 失败回调:连一个控件也没有找到时会回调
  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

wait(index)

等待出现

  • 参数 : index {int} 第几个,如果index在集合的范围内,就返回index对应的控件,否则返回第一个
  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

waitFirst()

等待出现第一个

  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

waitFirst(failCallback)

等待出现第一个

  • 参数 : failCallback {()=>{}} 失败回调:连一个控件也没有找到时会回调
  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

waitLast()

等待出现最后一个

  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

waitLast(failCallback)

等待出现最后一个

  • 参数 : failCallback {()=>{}} 失败回调:连一个控件也没有找到时会回调
  • 返回 : {Node} 找到的控件
  • 版本 : 1.0.0

setWaitTime(times)

设置等待次数

  • 参数 : times {int} 等待次数(默认:120)
  • 版本 : 1.0.0

setWaitDur(times)

设置等待延迟

每次等待中会有一定的间隔

  • 参数 : times {int} 等待延迟(默认:500[毫秒])
  • 版本 : 1.0.0
最近更新: 2025/5/14 08:43
Contributors: 孑小白
Prev
01.手势动作 - $act
Next
03.节点 - Node