僅僅調用RecyclerView中的api即可
mRv.setOnScrollListener(new RecyclerView.OnScrollListener() { int titleHeight; @Override public void onScrolled(RecyclerView rv, int dx, int dy) { super.onScrolled(rv, dx, dy); titleHeight = titleHeight == 0 ? titleView.getMeasuredHeight() : titleHeight; if (rv.computeVerticalScrollOffset() <= titleHeight) { float rate = (float) rv.computeVerticalScrollOffset() / (float) titleHeight; titleView.setAlpha(rate); } } });
這個titleHeight是標題欄的高度,然後這裡的邏輯是垂直下滑的位移除以標題欄的高度就是比例
非常簡單
效果圖