RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局

先给大家上个gif 要不然下面很枯燥
忘记原来在哪里看到了.....




这个效果我找了NNNNNN长时间,,,我认为凭我现在的能力 写出来需要好久 所以 退而求其次找大神写好的...
你们不要小看了这个我整整找了三四天才找到这个一个符合的(就一个 我的苍天)
废话不多说直接上代码
step 1
添加依赖 (不要问我在哪里添加)
compile'com.azoft.carousellayoutmanager:carousel:1.2.1'



RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
文章图片


step 2
布局 就用系统的就可以


RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
文章图片
step 3
adapter 配置(正常写你自己的逻辑跟这些都没关系主要就是layoutmanage)


RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
文章图片


step 4
activity配置


RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
文章图片
initRecyclerView()方法内容 ------关键地方
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓


RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
文章图片
//实现zoom效果

// enable zoom effect. this line can be customized
layoutManager.setPostLayoutListener(newCarouselZoomPostLayoutListener());
layoutManager.setMaxVisibleItems(2);
recyclerView.setLayoutManager(layoutManager);
//固定item大小
// we expect only fixed sized item for now
recyclerView.setHasFixedSize(true);
// sample adapter with random data
recyclerView.setAdapter(adapter);
//实现中间item滚动
// enable center post scrolling
recyclerView.addOnScrollListener(newCenterScrollListener());




//item滑动监听
DefaultChildSelectionListener.initCenterItemListener(newDefaultChildSelectionListener.OnCenterItemClickListener() {

@Override
public voidonCenterItemClicked(@NonNullfinalRecyclerViewrecyclerView,@NonNullfinalCarouselLayoutManagercarouselLayoutManager,@NonNullfinalViewv) {
final intposition= recyclerView.getChildLayoutPosition(v);


},recyclerView,layoutManager);




//item点击监听



layoutManager.addOnItemSelectionListener(newCarouselLayoutManager.OnCenterItemSelectionListener() {

@Override
public voidonCenterItemChanged(final intadapterPosition) {
if(CarouselLayoutManager.INVALID_POSITION!= adapterPosition) {
【RecyclerView实现终极画廊效果|RecyclerView实现终极画廊效果 中间突出并且压住两侧布局】

}
}
});


到此就可以完事了大家回去多家联系联系因为我也忘记原demo在哪里了(好像是在 IT蓝豹里找的) 因为我这个是项目里的 所以我就懒得写demo了 大家也可以试试在github上搜索carousellayoutmanager 没准就可以找到之后下载demo 改一些坑就可以用了
大功告成!!!!!

    推荐阅读