我有一个[PDFView][1]
作为CoordinatorLayout
的直接子项,如下所示:
我尝试将app:layout_behavior="@string/appbar_scrolling_view_behavior"
添加到PDFView
,但它不兼容,因此它不会触发Toolbar
上的任何滚动行为。
Toolbar
有app:layout_scrollFlags="scroll|enterAlways|snap"
,我知道它有效,因为我已使用NestedScrollView
代替PDFView
对其进行了测试。
所以我想以编程方式实现这一点,但是我找不到任何关于如何让CoordinatorLayout
知道滚动正在进行的文档,它应该让Toolbar
的动画消失。
如何以编程方式触发此行为? PDFView
有ScrollListner
我只是不知道如何将其连接到CoordinatorLayout
。
答案 0 :(得分:1)
首先,PDF视图不实现NestedScrollingChild2,因此您需要实现它。实施后,您必须实施five 方法。还要创建一个实例NestedScrollingChildHelper 并将实现的方法委托给此实例。
视图子类应该将此类的最终实例实例化为构造中的字段。对于在此类中具有匹配方法签名的每个View方法,将操作委托给重写方法实现中的帮助程序实例。这实现了嵌套滚动的标准框架策略。
让我知道它是否有效。