SCROLL_TO_POSITION в executeAction () возвращает false AccessibilityService Android - PullRequest
0 голосов
/ 06 апреля 2020

Привет. Я хочу прокрутить до определенной позиции в макете, используя AccessibilityService.

Я пробовал несколько способов, но только 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);
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...