RecyclerView实现终极画廊效果 中间突出并且压住两侧布局
先给大家上个gif 要不然下面很枯燥
忘记原来在哪里看到了.....

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

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

step 3
adapter 配置 (正常写你自己的逻辑 跟这些都没关系 主要就是layoutmanage)

step 4
activity配置

initRecyclerView()方法内容 ------关键地方
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

//实现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) {
}
}
});
到此就可以完事了 大家回去多家联系联系 因为我也忘记原demo在哪里了(好像是在 IT蓝豹里找的) 因为我这个是项目里的 所以我就懒得写demo了 大家也可以试试在github上搜索 carousellayoutmanager 没准就可以找到 之后下载demo 改一些坑就可以用了
大功告成!!!!!
RecyclerView实现终极画廊效果 中间突出并且压住两侧布局的更多相关文章
- RecyclerView实现Gallery画廊效果
使用RecyclerView实现一个画廊效果,主要是使用support库中最新加入的PagerSnapHelper类,通过计算滑动偏移来计算scale的值. 基本实现 首先需要为RecyclerVie ...
- RecyclerView 实现gallery画廊效果
1.RecyclerView的基本用法 首先主Activity的布局文件: [html] view plaincopy <RelativeLayout xmlns:android="h ...
- Android RecyclerView 实现支付宝首页效果
Android RecyclerView 实现支付宝首页效果 [TOC] 虽然我本人不喜欢支付宝的,但是这个网格本身其实还是不错的,项目更新中更改了一个布局为网格模式,类似支付宝.(估计是产品抄袭的= ...
- Android -- 使用ViewPager实现画廊效果
1,今天在微信推送文章看到实现画廊效果,感觉挺不错的,就来写写试试,先来看一下效果图: 上面的效果基本上可以用两个功能点来包含:ViewPager的切换动画.ImageView的倒影的实现 嗯,先来将 ...
- Android画廊效果
Android画廊效果 前言:Gallery是一个内部元素控件,可以水平滚动,并且可以把当前选择的子元素定位在它中心的布局组件:画廊Gallery一般用来显示可左右移动图片的列表(具体请看实例). 效 ...
- [Android Pro] RecyclerView实现瀑布流效果(二)
referece to : http://blog.csdn.net/u010687392 在上篇中我们知道RecyclerView中默认给我们提供了三种布局管理器,分别是LinearLayoutMa ...
- RecyclerView实现瀑布流效果(图文详解+源码奉送)
最近有时间研究了一下RecyclerView,果然功能强大啊,能实现的效果还是比较多的,那么今天给大家介绍一个用RecyclerView实现的瀑布流效果. 先来一张效果图: 看看怎么实现吧: 整体工程 ...
- Android -- RecyclerView实现顶部吸附效果
1,先来看一下今天实现的效果: 2,这次的效果是使用ItemDecoration来实践的,来看一看我们的实现吧 第一步:首先添加依赖,由于我们这些数据是请求网络的,所以一下我们添加网络框架依赖.Rec ...
- RecyclerView 实现横向滚动效果
我相信很久以前,大家在谈横向图片轮播是时候,优先会选择具有HorizontalScrollView效果和ViewPager来做,不过自从Google大会之后,系统为我们提供了另一个控件Recycler ...
随机推荐
- jQuery实现菜单全选/不选
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- PHP实现文字写入图片功能
/** * PHP实现文字写入图片 */class wordsOnImg { public $config = null; /** * @param $config 传入参数 * @param $co ...
- Android内存优化————加载长图
项目中总会遇到加载长图的需求,图片的长度可能是手机长度的很多倍,也就是需要通过滑动来查看图片.比较简单的实现方式就是使用ScrollView来加载长图,但是这样做有一个很严重的问题,就是内存消耗严重. ...
- BZOJ 3943: [Usaco2015 Feb]SuperBull 最小生成树
Code: // luogu-judger-enable-o2 #include<bits/stdc++.h> #define setIO(s) freopen(s".in&qu ...
- phpMyAdmin使用教程
---恢复内容开始--- wamp中自带了管理MySQL的phpMyAdmin,可用来本机测试,服务器维护,虚拟主机用户管理MySQL. 登录需记住servername,username,passwo ...
- case...when...then if 用法
select case when if 的一些用法 概述:sql语句中的case语句与高级语言中的switch语句,是标准sql的语法,适用于一个条件判断有多种值的情况下分别执行不同的操作. 首先,让 ...
- [vuejs短文]使用vue-transition制作小小轮播图
提示 本文是个人的一点小笔记,用来记录开发中遇到的轮播图问题和vue-transition问题. 会不断学习各种轮播图添加到本文当中 也有可能会上线,方便看效果 开始制作 超简易呼吸轮播 简单粗暴的使 ...
- 继续聊WPF——Thumb控件
这个控件,真不好介绍,MSDN上也是草草几句,反正就是可以让用户拖动的玩意儿,但是,你会发现,当你在该控件上拖动时,它没有反响,也就是说这个东西默认不做任何操作的,它是赖在那里什么都不干,除非你去踢上 ...
- 2.IntelliJ IDEA 下载破解(2017)
1.首先,我找到了 IntelliJ IDEA的官网:www.jetbrains.com 然后找到下载的地方,选择自己电脑所匹配的下载安装包,这里我们选择收费版的下载,因为免费版的功能并没有收费版的强 ...
- 01010_Eclipse中项目的jar包导入与导出
1.jar包 jar包是一个可以包含许多.class文件的压缩文件.我们可以将一个jar包加入到项目的依赖中,从而该项目可以使用该jar下的所有类:也可以把项目中所有的类打包到指定的jar包,提供给其 ...