Android RecyclerView使用GridLayoutManager间距设置的方法
使用RecyclerView设置间距,需要重写RecyclerView.ItemDecoration这个类。有如下的效果图需要实现,间距只有中间的格子和底部的格式之间有。

实现方法很简单,因为这个效果是每一行有3个格子,只要每行的第一个格式左边间距为0即可以。其他都设置左边距和底部距离。
代码如下:
public class SpaceItemDecoration extends RecyclerView.ItemDecoration {
private int space;
public SpaceItemDecoration(int space) {
this.space = space;
}
@Override
public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
//不是第一个的格子都设一个左边和底部的间距
outRect.left = space;
outRect.bottom = space;
//由于每行都只有3个,所以第一个都是3的倍数,把左边距设为0
if (parent.getChildLayoutPosition(view) %3==0) {
outRect.left = 0;
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
浅谈Android RecyclerView 间距全适配
本文介绍了Android RecyclerView 间距全适配,分享给大家,具体如下: LinearLayoutManager spacing import android.graphics.Rect; import android.support.v7.widget.RecyclerView; import android.view.View; /** * Created by anonymous on 2016/9/9 0009. * <p> * SpacesItemDecoration
-
Android RecyclerView使用GridLayoutManager间距设置的方法
使用RecyclerView设置间距,需要重写RecyclerView.ItemDecoration这个类.有如下的效果图需要实现,间距只有中间的格子和底部的格式之间有. 实现方法很简单,因为这个效果是每一行有3个格子,只要每行的第一个格式左边间距为0即可以.其他都设置左边距和底部距离. 代码如下: public class SpaceItemDecoration extends RecyclerView.ItemDecoration { private int space; public Sp
-
Android RecyclerView实现多种item布局的方法
在项目中列表是基本都会用到的,然而在显示列表时,我们需要的数据可能需要不止一种item显示,对于复杂的数据就需要多种item,以不同的样式显示出来,这样效果是很棒的,我们先看一下效果 我们可以看到,这个RecyclerView中有多种item显示出来,那么具体怎么实现呢,其实在RecyclerView中,我们可以重写方法getItemViewType(),这个方法会传进一个参数position表示当前是第几个Item,然后我们可以通过position拿到当前的Item对象,然后判断这个item对
-
Android RecyclerView添加头部和底部的方法
如果只是想添加头部,可是使用GitHub里面这个项目,它可以为LinearLayoutManager,GridLayoutManager ,StaggeredGridLayoutManager布局的RecyclerView添加header.使用起来也十分简单: 只需将RecyclerViewHeader布局放在RecyclerView的上层. <FrameLayout android:layout_width="match_parent" android:layout_heigh
-
Android RecyclerView的卡顿问题的解决方法
RecyclerView为什么会卡 RecyclerView作为v7包的新控件,自从推出就广受Android Developer们欢迎,实际上它已经取代了ListView和GridView两位老前辈的地位.然而不少亲们想必也已经发现了:没有优化过的Recycler性能很poor.上一篇博主使用的item也仅仅是一个图两串字而已,结果一滑动就卡的要命,不能忍! 那么why?回想在用ListView和GridView的adapter时,我们是用一种叫ViewHolder的自定义类(容器)来实现优化的
-
Android中系统默认输入法设置的方法(输入法的显示和隐藏)
1.调用显示系统默认的输入法 方法一. InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(m_receiverView(接受软键盘输入的视图(View)),InputMethodManager.SHOW_FORCED(提供当前操作的标记,SHOW_FORCED表示强制显示)); 方法二. InputMethodManager
-
Android RecyclerView设置下拉刷新的实现方法
Android RecyclerView设置下拉刷新的实现方法 1 集成 SwipeRefreshLayout 1.1 xml布局文件中使用 <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/refresh" android:layout_width = "match_parent" android:layout_height = "match_parent" &g
-
Android RecyclerView 上拉加载更多及下拉刷新功能的实现方法
RecyclerView 已经出来很久了,但是在项目中之前都使用的是ListView,最近新的项目上了都大量的使用了RecycleView.尤其是瀑布流的下拉刷新,网上吧啦吧啦没有合适的自己总结了一哈. 先贴图上来看看: 使用RecyclerView实现上拉加载更多和下拉刷新的功能我自己有两种方式: 1.使用系统自带的Android.support.v4.widget.SwipeRefreshLayout这个控价来实现. 2.自定义的里面带有RecyleView的控件. 使用RecycleVie
-
Android RecyclerView使用方法详解
本文为大家分享了Android RecyclerView使用方法,供大家参考,具体内容如下 1.RecyclerView 是在Android support - v7 里面提供的 新的列表组件,用来替代传统的ListView. . 要使用RecyclerView 需要给我工程添加 support:recycle-v7 的支持: app 右键 - Open Module Settings - Dependencies(依赖项) - 点 + 号 - 添加一个库 upport:recycle-v7
-
Android中RecyclerView点击Item设置事件
在上一篇Android RecylerView入门教程中提到,RecyclerView不再负责Item视图的布局及显示,所以RecyclerView也没有为Item开放OnItemClick等点击事件,这就需要开发者自己实现.博客最下面有Demo程序运行动画. 奉上Demo的Github链接. 在调研过程中,发现有同学修改RecyclerView源码来实现Item的点击监听,但认为这不是一个优雅的解决方案,最终决定在RecyclerView.ViewHolder上做文章. 思路是:因为ViewH
随机推荐
- jQuery自动或手动图片切换效果
- JSP页面中文参数的传递(get和post方法分析)
- SQL Server手工插入标识列的方法
- oracle 分页问题解决方案
- 用vbs实现的利用ADSL拨号变ip刷投票的代码
- sql server创建临时表的两种写法和删除临时表
- JavaScript中函数声明与函数表达式的区别详解
- Python兔子毒药问题实例分析
- vuejs+element-ui+laravel5.4上传文件的示例代码
- 在SAE上部署Python的Django框架的一些问题汇总
- C# 中string.split用法详解
- PHP判断远程url是否有效的几种方法小结
- jQuery中ajax的4种常用请求方式介绍
- css实现的对联广告代码
- jQuery中animate动画第二次点击事件没反应
- java使用POI读取properties文件并写到Excel的方法
- C语言构建动态数组完整实例
- Android对话框自定义标题 对话框标题美化操作
- 改写ThinkPHP的U方法使其路由下分页正常
- laravel 中如何使用ajax和vue总结
