有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在performAction()中将\u滚动到\u位置,返回false AccessibilityService Android

您好,我想使用AccessibilityService滚动到布局中的特定位置y

我尝试了几种方法,但只有AccessibilityNodeInfo.ACTION_SCROLL_FORWARD有效,而AccessibilityNodeInfo.AccessibilityAction.ACTION_SCROLL_TO_POSITION无效

我是这样用的。要改变什么才能让它工作

private AccessibilityNodeInfo findScroll(AccessibilityNodeInfo root) {
    if(root == null) return null;

    if(root.isScrollable())
        return root;

    for(int i=0; i<root.getChildCount(); i++) {
        if(root.getChild(i).isScrollable())
            return root.getChild(i);
    }
    return null;
}

AccessibilityNodeInfo scrollable = findScroll(getRootInActiveWindow());
            if (scrollable != null) {
                Bundle bundle = new Bundle();
                bundle.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_ROW_INT, 8);
                bundle.putInt(AccessibilityNodeInfo.ACTION_ARGUMENT_COLUMN_INT, 8);
                scrollable.performAction(AccessibilityNodeInfo.AccessibilityAction.ACTION_SCROLL_TO_POSITION.getId(), bundle);
            }

共 (0) 个答案