可点击约束 (Selector.clickable)
Selector.clickable
声明
node.selector():clickable(val)
参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| val | boolean | 是 | true=可以点击,false=不可点击 |
返回值
| 类型 | 说明 |
|---|---|
| Selector | 返回控件查找器,用于链式编程 |
说明
通过控件的可点击属性(clickable)约束控件。
属性含义:
clickable=true表示控件可以响应点击事件clickable=false表示控件不响应点击事件- 该属性由开发者在控件定义时设置
适用场景:
clickable(true)- 查找所有可交互的控件(按钮、链接等)clickable(false)- 查找纯展示控件(文本标签、图片等)- 配合其他约束精确定位可点击元素
注意事项:
- 控件 clickable=true 不代表一定能点击成功,还需控件可见且未被禁用
- 某些控件虽然 clickable=false,但其父控件可能是可点击的
- 列表项通常整行可点击,而非单个子控件
- 可通过
node.dump()查看控件的实际 clickable 属性值
相关属性约束:
longClickable(bool)- 是否可长按checkable(bool)- 是否可选中enabled(bool)- 是否已启用
待实现
该接口正在开发中。
示例
local node = require("node")
-- 查找当前页面中所有可以被点击的控件
local nodes = node.selector():clickable(true):find_all()
if nodes then
for _, node in ipairs(nodes) do
print(node)
end
else
print("没有找到任何控件")
end
AScript 对应
# AScript (Python)
from ascript.android.node import Selector
nodes = Selector().clickable(True).find_all()