Android 滚动条上类似路径的标记
我想为android实现时间标记。我找到了一些关于如何在ListView上实现这一点的指南,但我需要为包含不同大小项目的RecyclerView提供这些指南。Android 滚动条上类似路径的标记,android,android-recyclerview,Android,Android Recyclerview,我想为android实现时间标记。我找到了一些关于如何在ListView上实现这一点的指南,但我需要为包含不同大小项目的RecyclerView提供这些指南。 我该怎么做呢?我们使用了非常简单和愚蠢的方法来实现时间路径的平滑动画,比如mark。我们忽略了滚动条的真实位置,因为它很难获得,而且它往往会根据内容大小急剧改变其大小和位置。 在RecyclerView的OnScrolled方法中,我们根据滚动的像素数量重新计算并重置了视图的边距。下面是代码现在的样子: @Over
我该怎么做呢?我们使用了非常简单和愚蠢的方法来实现时间路径的平滑动画,比如mark。我们忽略了滚动条的真实位置,因为它很难获得,而且它往往会根据内容大小急剧改变其大小和位置。 在RecyclerView的OnScrolled方法中,我们根据滚动的像素数量重新计算并重置了视图的边距。下面是代码现在的样子:
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (dy == 0) return;
if (dy < 0) {
if ((botMarg - dy) >= displayHeight - topOffset) {
botMarg = displayHeight - topOffset;
} else {
botMarg -= dy;
}
} else {
if (botMarg - dy <= botOffset) {
botMarg = botOffset;
} else {
botMarg -= dy;
}
}
为了获得当前视图,我们使用了方法recyclerView.findChildViewUnder,其中包含了我们在Crowled中得到的位置