Прокрутите положение дочернего элемента в группе FloatingGroupExpandableListView

У меня есть https://github.com/diegocarloslima/FloatingGroupExpandableListView только с одним дочерним (больше, чем экран) в каждой группе. Я хочу иметь возможность восстановить текущую позицию прокрутки любого из этих дочерних элементов как после изменения конфигурации, так и после восстановления содержащего фрагмента из заднего стека. Поэтому мне нужно иметь возможность получить текущую позицию прокрутки единственного дочернего элемента открытой в данный момент группы (как вектор, а не как число элементов списка).

Я попробовал следующий код, но он не работал. Моя переменная childScrollPosition всегда возвращает 0. openchildview содержит номер группы.

@Override
public void onPause() {
    super.onPause();
    int floatingGroupPosition = FloatingGroupExpandableListView.getPackedPositionGroup(expandListView.getExpandableListPosition(openChildView));
    if (floatingGroupPosition > -1) {
        View floatingChildView = wrapperExpandListAdapter.getChildView(floatingGroupPosition, 0, true, null, expandListView);
        childScrollPosition = floatingChildView.getScrollY();
        // also tried .getTop() and .getY(), always got 0
    } else {
        childScrollPosition = 0;
    }
}

0 ответов

Другие вопросы по тегам