【问题标题】:Android: recycler view over tab barAndroid:标签栏上的回收站视图
【发布时间】:2016-04-04 13:23:56
【问题描述】:

我需要创建一个类似于星巴克的效果,其中列表视图(或片段)在标签栏上滚动。

我创建了一个标签栏,在它下面我有一个带有回收器视图的 viewpager。我能够将 recyclerview 与标签栏一起移动,但无法创建我的回收器视图(托管在 viewpager 中)在标签栏上滚动的效果。

【问题讨论】:

    标签: android android-viewpager android-recyclerview


    【解决方案1】:

    在您的列表中放置一个 scrollListener 并在滚动时为您尝试使其滚动到条形的主体添加一个小动画

     listView.setOnScrollListener(new AbsListView.OnScrollListener() {
                    @Override
                    public void onScrollStateChanged(AbsListView view, int scrollState) {
    
                    }
    
                    @Override
                    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,
                                         int totalItemCount) { movingBody.setTranslationY(getScroll());}}
    
    protected int getScroll() {// as list recycles views , getscrollY wont give us how much it has scrolled, hence we use this hack
        View firstChildInList = listView.getChildAt(0);
        if (firstChildInList == null) return 0;
        return firstChildInList.getTop() + listView.getFirstVisiblePosition() * firstChildInList.getHeight();
    }
    

    获取滚动用于确定您滚动了多少才能停止翻译动画 您可以为动画的开始和停止设置自己的条件,而不是 getScroll

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多