函数:widget.find 根据属性组合查找控件

函数功能: 根据属性组合查找控件

引擎版本:仅 Android v3.2.1 及其以上版本支持

函数方法

wid = widget.find(tb)

参数 类型 必填 说明
tb.id string 控件 ID,可以使用 IDE 的控件节点进行获取
tb.text string 文本,可以使用 IDE 的控件节点进行获取
tb.type string 类型,可以使用 IDE 的控件节点进行获取
tb.desc string 描述,可以使用 IDE 的控件节点进行获取
tb.path string 路径,可以使用 IDE 的控件节点进行获取
tb.rule number 默认为 0 - 完全匹配,1 - 部分匹配,2 - 开头匹配,3 - 结尾匹配,仅支持 text、type、desc 参数
tb.long-clickable string 是否可以长按,false - 不可以长按,ture - 可以长按,仅支持 v1.0.1 及其以上版本
tb.clickable string 是否可以点击,fasle - 不可点击,true - 可以点击,仅支持 v1.0.1 及其以上版本
tb.scrollable string 是否可以滚动,false - 不可以滚动,true - 可以滚动,仅支持 v1.0.1 及其以上版本
tb.editable string 是否可以编辑,false - 不可以编辑,ture - 可以编辑,仅支持 v1.0.1 及其以上版本
tb.checkable string 是否可以选中,false - 不可以选中,true - 可以选中,仅支持 v1.0.1 及其以上版本
返回值 类型 说明
wid userdata/nil 查找成功则返回控件对象,失败返回空

函数用例

--除控件函数外请勿将其他积木编程函数用于触动精灵,同理请勿将触动精灵函数用于积木编程
mSleep(1000)
wid = widget.find({["id"]="com.play4u.luabox:id/tv_user_name",["text"]="登录",["type"]="TextView",["path"]="/FrameLayout/LinearLayout/FrameLayout/LinearLayout/FrameLayout/LinearLayout/FrameLayout/LinearLayout/RelativeLayout/RelativeLayout/LinearLayout/TextView",["clickable"]="true",["longclickable"]="false",["scrollable"]="false",["editable"]="false",["checkable"]="false",["rule"]=1})
if wid ~= nil then
    mSleep(1000)
    toast("控件已找到")
    mSleep(1000)
    --点击控件
    widget.click(wid)
else
    mSleep(1000)
    toast("控件未找到",5)
    mSleep(5000)
end

注意事项

  • 使用此函数不要使用 widget 做变量,否则会导致脚本报错。

  • 在触动精灵[我的账号] - [偏好设置]中打开无障碍权限开关才能使用此函数,如果此函数失效请重启无障碍开关再试。

Copyright 北京帮你玩科技有限公司 2020 all right reserved,powered by Gitbook该文章修订时间: 2020-11-06 18:17:46

results matching ""

    No results matching ""