可穿戴列表视图 Header

WearableListView Header

我正在尝试创建一个 WearableListView 类似于默认“设置”应用中的那个。我有一个 WearableListView 滚动,并为每个元素设置动画。我现在需要的是列表顶部的 header ,当列表滚动时它会向上滚动。这与标题 'Settings' 在“设置”应用中的行为相同。

我找到的唯一方法,此处使用:How to Set the Layout for topEmptyRegion, implements a WearableListView.OnScrollListener(). Then uses the onAbsoluteScrollChange() method to set the displacement of the TextView used as a header. But, according to the Android Developer References,此方法已弃用。文档甚至指出:建议不要使用这个 当 RecyclerView 的内容更改时,这可能会提供错误的值

我想知道是否还有其他人找到了一种方法来实现 header 的这种行为方式,一种未被弃用的方法。可能是我在 Android Wear 文档中遗漏了什么?

编辑:

无论如何我都尝试过实现这个方法。事实证明,WearableListView.setOnScrollListener() 不会接受 new WearableListView.OnScrollListener()。相反,它要求它的 parent RecyclerView.OnScrollListener,它没有 onAbsoluteScrollChange() 方法。它确实有一个 onScrolled() 方法,我试图实现它。事实证明,这完全覆盖了 WearableListView 的默认滚动侦听器,并使居中项目可以 off-center。绝对不是我想要的效果。

由于没有弃用 onScroll(),您可以通过在监听器中实现它来实现相同的目的:

@Override
public void onScroll(int scroll) {
    header.setY(header.getY() - scroll);
}

其中 header 是 header 组件。

编辑: 确保使用 WearableListView.addOnScrollListener 而不是 WearableListView.setOnScrollListener()