我正在尝试创建一个类似于默认设置应用程序中的WearableListView。我有一个WearableListView滚动,并设置每个元素的动画。我现在需要的只是列表顶部的一个标题,当列表滚动时会向上滚动。这与“设置”应用程序中标题“设置”的行为相同。
我在这里找到的唯一方法是:How to Set the Layout for topEmptyRegion,它实现了一个WearableListView.OnScrollListener()。然后使用onAbsoluteScrollChange()方法设置用作标题的TextView的位移。但是,根据Android Developer References,该方法已被弃用。文档甚至声明:请注意不要使用此选项当RecyclerView的内容更改时,可能会提供错误的值。
我想知道是否有其他人找到了一种方法来实现这样的头,一个不被弃用的头。可能是我在android-wear文档中遗漏了什么?
编辑:
无论如何,我试着实现这个方法。事实证明,WearableListView.setOnScrollListener()不需要new WearableListView.OnScrollListener()。相反,它要求它的父节点RecyclerView.OnScrollListener,而父节点没有onAbsoluteScrollChange()方法。它确实有一个onScrolled()方法,我试图实现它。事实证明,这将完全覆盖WearableListView的默认滚动侦听器,并使其使居中项偏离中心。绝对不是我想要的效果。

最佳答案

由于onscroll()不被弃用,您可以通过在侦听器中实现它来实现相同的功能:

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

其中header是标题组件。
编辑:确保使用WearableListView.addOnScrollListener而不是WearableListView.setOnScrollListener()

07-26 01:16