2015-08-28 41 views
0

我想为android实现Path-like时间标记。我发现了一些关于如何在ListView上实现它的指南,但我需要为RecyclerView做到这一点,其中包含不同大小的项目。 我该怎么做?滚动条上的路径状标记

回答

0

我们用非常简单和愚蠢的方法来实现时间路径标记的流畅动画。我们忽略了滚动条的真实位置,因为它很难获得,并且它倾向于根据内容大小大幅改变它的大小和位置。 在RecyclerView的OnScrolled方法中,我们根据dy重新计算并重置视图边距 - 所有像素都滚动。下面是代码看起来像现在:

  @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()我们OnScrolled了位置当前视图。