autojs之 新手可能会踩的坑1.控件篇

本文介绍如何避免控件操作中的bug,如使用非阻塞方法寻找控件、灵活选择标识符、穿透情况下判断策略,以及推荐的控件查找技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 在控件操作失效的情况下,可以尝试手动点击或者滑动下屏幕,代码就可以跑起来了,不知道是不是BUG, 所以在之前加一个判断是一个很好的办法.
  2. 建议在寻找控件的时候不要使用waitFor()等带有阻塞的方法,这可能会导致脚本死在某个地方,非常的不好用,并且注意该大写的代码一定要大写。
    例如:
textContains("哈哈哈").waitFor();
//可以改写为:
let con=textContains("哈哈哈").findOnce()
 if (con) {
     log("con存在") 
  }

  1. 尽管id属性很方便,但也不总是最方便的,例如控件id可能会变化,或者id存在重复的时候,推荐使用 className() depth() drawingorder() 和indexInParent() 来寻找控件。

例如:

//
let con=className("android.widget.Image").depth(6).drawingOrder(5).indexInParent(1).findOnce()
 if (con) {
     log("con存在") 
  }


  1. 在控件穿透的情况下,即 控件即时看不到但却能识别到的时候,可以使用visibleToUser()和控件的bounds()来判断是所想选中的控件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值