滑动控件 (Node.slide)
Node.slide
声明
node:slide(ore)
参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| ore | number | 是 | 滑动方向:1=向前滑动(默认),-1=向后滑动 |
返回值
| 类型 | 说明 |
|---|---|
| boolean | 滑动成功返回 true,失败返回 false |
说明
滑动指定的可滚动控件。
工作原理:
- 通过 Android AccessibilityService 的
performAction(ACTION_SCROLL_FORWARD/BACKWARD)实现 - 触发控件的滚动事件,滚动距离由系统决定(通常为一屏或一个单位)
- 不依赖坐标,直接操作控件的滚动行为
适用场景:
- 滚动列表(ListView、RecyclerView)
- 滚动页面(ScrollView、WebView)
- 切换 ViewPager 页面
参数说明:
1或正数:向前滑动(列表向下滚动、页面向右切换)-1或负数:向后滑动(列表向上滚动、页面向左切换)
注意事项:
- 控件必须是可滚动类型,且
scrollable=true - 每次调用滑动一个单位,如需连续滚动请循环调用
- 滚动到底部/顶部后继续调用不会报错,但无实际效果
- 如需精确控制滑动距离,请使用
touch模块的滑动手势
待实现
该接口正在开发中。
示例
local node = require("node")
local n = node.selector():type("RecyclerView"):find()
if n then
n:slide(-1) -- 向后滑动
end
AScript 对应
# AScript (Python)
from ascript.android.node import Selector
node = Selector().type("RecyclerView").find()
if node:
node.slide(-1)