当前位置: 首页 > news >正文

按键精灵ios脚本新增元素功能助力辅助工具开发(二)

元素节点功能(iOSElement)​

在按键精灵 iOS 新版 APP v2.2.0 中,新增了元素节点功能 iOSElement,该功能包含共 15 个函数。这一功能的出现,为开发者在处理 iOS 应用界面元素时提供了更为精准和高效的方式。通过这些函数,开发者能够更加便捷地定位、操作应用中的各种元素,从而实现更复杂的自动化任务。例如,在自动化测试场景中,可以利用 iOSElement 函数快速找到特定的按钮、文本框等元素,并模拟用户的点击、输入等操作,大大提高测试效率。

下面介绍下5个函数信息:iOSElement.FindParent、iOSElement.FindSibling、iOSElement.SetText、iOSElement.Click、iOSElement.ScrollToOffset

函数名称

iOSElement.FindParent 获取指定元素的父元素

功能

获取指定元素的父元素信息的键值表

语法

result = iOSElement.FindParent(subElement)

代码范例

Dim result, subelement
RunApp "com.apple.Preferences"
Delay 1000
subElement = {"id": "PSTableCell"}
result = iOSElement.Find(subElement)
If result["code"] = 0 Then 
    result = iOSElement.FindParent(result["data"])
    If result["code"] = 0 Then 
        TracePrint Encode.TableToJson(result["data"])
    Else
        TracePrint result["msg"]
    End If
Else 
    TracePrint result["msg"]
End If

函数名称

iOSElement.FindSibling 获取指定元素的所有同层级元素

功能

获取指定元素的所有同层级元素信息的键值表

语法

result = iOSElement.FindSibling(element,selector)

代码范例

Dim result, selector
RunApp "com.apple.Preferences"
Delay 1000
selector = {"id": "PSTableCell"}
result = iOSElement.Find(selector)
If result["code"] = 0 Then 
    // 获取当前层级的所有兄弟节点
    result = iOSElement.FindSibling(result["data"])
    If result["code"] = 0 Then 
        For i = 1 To Len(result["data"])
            TracePrint Encode.TableToJson(result["data"][i])
        Next
    Else
        TracePrint result["msg"]
    End If
    // 查找指定条件的兄弟节点
    result = iOSElement.FindSibling(result["data"], {"text":"隐私", "type":"UITableViewLabel"})
    If result["code"] = 0 Then 
        For i = 1 To Len(result["data"])
            TracePrint Encode.TableToJson(result["data"][i])
        Next
    Else
        TracePrint result["msg"]
    End If
Else 
    TracePrint result["msg"]
End If

函数名称

iOSElement.SetText 设置指定输入框元素的内容

功能

设置指定输入框元素的内容,支持完整目标元素节点或者元素查找条件,如查找到多个元素则只操作第一个元素

语法

result = iOSElement.SetText(element, text, isClear)

代码范例

Dim result, selector
RunApp "com.apple.Preferences"
Delay 1000
selector = {"id": "UISearchBarTextField"}
result = iOSElement.Find(selector)
If result["code"] = 0 Then 
    result = iOSElement.SetText(result["data"], "通用")
    If result["code"] = 0 Then 
        TracePrint "输入成功"
    Else
        TracePrint result["msg"]
    End If
Else 
    TracePrint result["msg"]
End If

函数名称

iOSElement.Click 点击指定的元素节点

功能

点击指定的元素节点,支持完整目标元素节点或者元素查找条件,如查找到多个元素则只操作第一个元素

语法

result = iOSElement.Click(element)

代码范例

Dim result, selector
RunApp "com.apple.Preferences"
Delay 1000
selector = {"text": "通用"}
result = iOSElement.Find(selector)
If result["code"] = 0 Then 
    result = iOSElement.Click(result["data"])
    If result["code"] = 0 Then 
        TracePrint "点击成功"
    Else
        TracePrint result["msg"]
    End If
Else 
    TracePrint result["msg"]
End If

函数名称

iOSElement.ScrollToOffset 将可滚动视图元素滚动到指定的方位

功能

将可滚动视图元素滚动到指定的方位

语法

result = iOSElement.ScrollToOffset(selector,x,y,animated)

代码范例

Dim result, selector
RunApp "com.apple.Preferences"
Delay 1000
selector = {"id": "UITableView"}
result = iOSElement.ScrollToOffset(selector, 0, 1000)
If result["code"] = 0 Then 
    TracePrint "滚动成功"
Else 
    TracePrint result["msg"]
End If

相关文章:

  • Python爬虫如何应对网站的反爬加密策略?
  • AI工具分享篇 | recraft.ai + figma 复刻技术路线图
  • web 自动化之 PO 设计模式详解
  • 物理:篮球为什么能被拍起来?
  • window 显示驱动开发-创建分配时指定段
  • 实物工厂零件画图案例(上)
  • git merge和git rebase
  • 【Qt】qss语法详解
  • 基于单片机的视力保护仪设计与实现
  • Elecron 相关介绍以及常见的面试问题
  • 18.Excel数据透视表:第1部分创建数据透视表
  • 基于Java的家政服务平台设计与实现(代码+数据库+LW)
  • 分析Docker容器Jvm 堆栈GC信息
  • 【Linux】网络基础2
  • TS类型操作工具汇总
  • switch-case 巧妙使用(case穿透)
  • InfluxDB-数据看板实现流程:从数据采集到可视化展示
  • Spring Boot 自动装配原理详解
  • Cascadeur2025如何无限制导出FBX文件
  • 无偿帮写服务器配置|限时30天|名额100
  • 人民日报评外卖平台被约谈:摒弃恶性竞争,实现行业健康发展
  • 北京航空航天大学首个海外创新研究院落户巴西
  • 这个“超强致癌细菌”,宝宝感染率高达40%,预防却很简单
  • 云南威信麟凤镇通报“有人穿‘警察’字样雨衣参与丧事”:已立案查处
  • 人民币对美元即期汇率盘中创半年新高,离岸市场升破7.2
  • 西藏日喀则市拉孜县发生5.5级地震,震感明显部分人被晃醒