Как запустить поведение прокрутки на панели инструментов внутри CoordinatorLayout - PullRequest
0 голосов
/ 17 мая 2018

У меня есть [PDFView][1] как прямой потомок CoordinatorLayout как в:

enter image description here

Я пытался добавить app:layout_behavior="@string/appbar_scrolling_view_behavior" к PDFView, но он не совместим, поэтому он не вызывает никакого поведения прокрутки на Toolbar.

У Toolbar есть app:layout_scrollFlags="scroll|enterAlways|snap", и я знаю, что это работает, потому что я уже протестировал его с NestedScrollView вместо PDFView.

Итак, я хочу достичь этого программно, но я не могу найти документацию о том, как сообщить CoordinatorLayout, что происходит свиток, и он должен оживить Toolbar, уходящий.

Как я могу запустить это поведение программно? У PDFView есть ScrollListner Я просто не знаю, как подключить его к CoordinatorLayout.

1 Ответ

0 голосов
/ 17 мая 2018

Во-первых, просмотр PDF не реализует NestedScrollingChild2, поэтому вам необходимо реализовать его.После его реализации вы должны реализовать пять методов.Также создайте экземпляр NestedScrollingChildHelper и делегируйте реализованные методы этому экземпляру.

Подклассы представления должны создавать конечный экземпляр этого класса как поле при создании.Для каждого метода View, имеющего соответствующую сигнатуру метода в этом классе, делегируйте операцию экземпляру помощника в реализации переопределенного метода.Это реализует стандартную рамочную политику для вложенной прокрутки.

Дайте мне знать, если это работает.

...