Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 可穿戴列表视图标题_Android_Scroll_Android Recyclerview_Wear Os - Fatal编程技术网

Android 可穿戴列表视图标题

Android 可穿戴列表视图标题,android,scroll,android-recyclerview,wear-os,Android,Scroll,Android Recyclerview,Wear Os,我正在尝试创建一个类似于默认设置应用程序中的WearableListView。我有一个WearableListView,可以滚动并设置每个元素的动画。我现在需要的是列表顶部的一个标题,当列表滚动时它会向上滚动。这与设置应用程序中标题“设置”的行为相同 我发现的唯一一种方法,在这里使用:,实现了一个WearableListView.OnScrollListener()。然后使用OnAbsolutionScrollChange()方法设置用作标题的TextView的位移。但是,根据,这种方法是不推荐

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

我发现的唯一一种方法,在这里使用:,实现了一个
WearableListView.OnScrollListener()
。然后使用
OnAbsolutionScrollChange()
方法设置用作标题的
TextView
的位移。但是,根据,这种方法是不推荐的。文档甚至指出:请注意不要使用此选项。当RecyclerView的内容更改时,这可能会提供错误的值

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

编辑:

无论如何,我都尝试实现这个方法。事实证明,
WearableListView.setOnScrollListener()
不会接受新的WearableListView.OnScrollListener()。相反,它请求它的父级
RecyclerView.OnScrollListener
,它没有
OnAbsolutionScrollChange()
方法。它确实有一个
onScrolled()
方法,我尝试实现它。事实证明,这完全覆盖了
WearableListView
的默认滚动侦听器,并使其可以使居中项偏离中心。肯定不是我想要的效果。

由于onScroll()没有被弃用,您可以通过在侦听器中实现它来实现同样的效果:

@Override
public void onScroll(int scroll) {
    header.setY(header.getY() - scroll);
}
其中,
标题
是标题组件


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

我实际上试图实现类似的功能(我编辑了我的问题以反映这一点),但它并没有产生我想要的结果。您需要使用WearableListView.addOnScrollListenet(WearableListView.OnScrollListener),然后覆盖我在解决方案中建议的内容,这应该会起作用。哇,我使用的是
setOnScrollListener()
而不是
addOnScrollListener()
我看错了。这很好,谢谢。我希望你不介意,我对你的答案进行了编辑以反映这一点。很高兴它起作用;当然,如果你认为它可以让其他人更清楚,请提交编辑。