Android RecyclerView设置item间距

RecyclerView没有可以直接设置间距的属性,但可以用ItemDecoration来装饰一个item,所以继承重写ItemDecoration就可以实现间距了

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) {  

            if(parent.getChildPosition(view) != 0)
                outRect.top = space;
        }
    }

然后在使用RecyclerView的地方:

int spacingInPixels = getResources().getDimensionPixelSize(R.dimen.space);
 mRecyclerView.addItemDecoration(new SpaceItemDecoration(spacingInPixels));

Adapter填充上,再看看item就有间距了

时间: 2024-11-03 21:37:32

Android RecyclerView设置item间距的相关文章

Android RecyclerView 设置item间隔的方法

RecyclerView大家常用,但是如何给加载出来的item增加间隔很多人都不知道,下面是方法,直接上代码了: LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity()); recyclerView.setLayoutManager(layoutManager); qujangAdapter = new QujiangAdapter(qujiangList, getActivity()); //设置ite

Android RecyclerView使用GridLayoutManager间距设置

使用RecyclerView设置间距,需要重写RecyclerView.ItemDecoration这个类.有如下的效果图需要实现,间距只有中间的格子和底部的格式之间有. Paste_Image.png 实现方法很简单,因为这个效果是每一行有3个格子,只要每行的第一个格式左边间距为0即可以.其他都设置左边距和底部距离. 代码如下: public class SpaceItemDecoration extends RecyclerView.ItemDecoration { private int

手机商城第五天,用recyclerview设置秒杀区域的布局,以及为该recyclerview设置item级的点击事件

代码已经托管到码云上,有兴趣的小伙伴可以下载看看: https://git.oschina.net/joy_yuan/ShoppingMall 之前可能忘记了web端,也就是这个APP里面内容的来源.其实就是一个简单的Tomcat里的小项目,目的是给这个APP提供一个json字符串,以及字符串里对应的内容,如图片,文字,这个web项目会放到下面. 这次的效果图如下,设置秒杀的布局以及给秒杀的每个item设置点击事件 这个秒杀布局,用的是recyclerview的横向布局. 一.在homeFrag

Android TextView 设置文字间距

搜索结果都不靠谱,基本上都说是android:textScaleX可以设置文字间距,也不知道你们到底有没有真正做过开发. Android开发文档里描述的很清楚: android:textScaleX Sets the horizontal scaling factor for the text. 这个东西是用来设置水平方向的文字放大和缩小的. 其实设置文字间距可以通过修改string.xml里的字符,在其中添加空格来实现. 但是在字符串中直接输入空格达不到想要的效果,这就需要使用转义字符来进行转

Android TextView 设置字间距和行间距

1.如果您是要设置TextView的行间距 请使用(不用看2了) android:lineSpacingMultiplier="1.8" 2.如果您是要设置字间距需要自定义控件 <pre name="code" class="java">import android.content.Context; import android.graphics.*; import android.text.TextUtils; import and

Android RecyclerView的item大小保持四个半

现在有这么一个需求,实现下图的UI.  我想你应该能想到用RecyclerView实现, 当我唰唰唰几分钟做完之后,UI设计师跟我说,每个item,无论在什么手机上,都要显示四个半,具体看下图. 我们都知道,Android手机的屏幕大小不一,这种需求我们不可能把图片的宽写死,或者写成wrap_content,这个时候就要在java代码中重新测量并且重新设置宽了.代码如下: LinearLayout.LayoutParams params = new LinearLayout.LayoutPara

android 代码设置图片间距

<pre class="java" name="code">java代码中如下设置间距 </pre> <pre></pre> <pre class="java" name="code">ImageView image1 = new ImageView(DetailActivity.this); LinearLayout.LayoutParams layout = ne

Android 高级UI设计笔记20:RecyclerView 的详解之RecyclerView添加Item点击事件

1. 引言: RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件,顺便复习一下观察者模式. 2. 最终目的 模拟ListView的setOnItemClickListener()方法,调用者只须调用类似于setOnItemClickListener的东西就能获得被点击item的相关数据.   3. 原理 为RecyclerView的每个子item设置setOnClickLi

android中设置ListView的选中的Item的背景颜色

ListView中没有默认的选择颜色,只有选择Item后的焦点颜色,鼠标点击时Item有颜色,放开鼠标后颜色也就没有了,要实现放开鼠标后选择项的背景还是有颜色的. 1.配置main.xml Java代码   <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"