可编辑约束 (Selector.editable)
Selector.editable
声明
node.selector():editable(val)
参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| val | boolean | 是 | true=可编辑,false=不可编辑 |
返回值
| 类型 | 说明 |
|---|---|
| Selector | 返回控件查找器,用于链式编程 |
说明
通过控件的可编辑属性(editable)约束控件。
属性含义:
editable=true表示控件可以编辑文本内容editable=false表示控件不支持文本编辑- 主要用于区分输入控件和展示控件
适用控件类型:
EditText- 通常 editable=trueTextView- 通常 editable=falseSearchView内的输入框 - editable=true
适用场景:
- 查找页面中所有输入框
- 定位可以输入文本的控件
- 区分可编辑和只读的文本控件
典型应用:
- 自动填充表单时查找所有输入框
- 批量获取页面中的输入控件
- 检测控件是否支持
input()方法
注意事项:
- editable=true 的控件通常可以使用
n:input()输入文本 - 某些 EditText 可能设置为只读(editable=false)
- 与
enabled不同,editable 专指文本编辑能力
待实现
该接口正在开发中。
示例
local node = require("node")
-- 查找当前页面中所有可以编辑文本的控件
local nodes = node.selector():editable(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().editable(True).find_all()