原文地址: Android LinearLayout快速设置每个item间隔

平常使用LinearLayout的时候,有时候会需要对每个item设置间距,但是每个item都加上margin的方法实在有些繁琐

因为之前是在写JavaFx程序,里面的Vbox或Hbox都会提供一个Space的参数,可以用来快速设置每个item之间的间距

而Android这边,是没看见对应的方法,于是搜索了一番,发现了可以通过divider分割线来一键设置item间距

实现步骤

1.创建divider对象

在drawble文件夹里面创建一个名为shape_option_item_pading.xml对象,然后设置宽高大小,这里我是针对垂直排列的线性布局,让每个item间隔16dp,所以只设置了高度

xml代码如下所示:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<size
android:width="0dp"
android:height="16dp" />
</shape>

当然,这里你也可以加上背景色

2.LinearLayout使用

<androidx.appcompat.widget.LinearLayoutCompat
app:divider="@drawable/shape_option_item_pading"
app:showDividers="middle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
</androidx.appcompat.widget.LinearLayoutCompat>
  • divider 设置为创建好的shape_option_item_pading.xml对象

  • showDividers 设置显示类型,有4种类型可选:beginning end middle none

  • beginning 开头设置分割线

  • end 末尾设置分割线

  • middle 中间设置分割线

  • none 不设置分割线

也很好理解,我们需要中间每个item自动加上间距,所以上述代码就是选用了middle

参考

Android LinearLayout快速设置每个item间隔的更多相关文章

  1. 巧用android:divider属性设置LinearLayout中元素之间的间隔

    如上图,要想实现3个button线性排列并且使它们的大小相同.间隔相等.而且整体填充满整个linearlayout,我们一般的做法是在每两个button之间放一个固定宽度的view,然后设置butto ...

  2. Android中Listview点击item不变颜色以及设置listselector 无效

    Android中Listview点击item不变颜色以及设置listselector 无效 这是同一个问题,Listview中点击item是会变颜色的,因为listview设置了默认的listsele ...

  3. Android ListView的item背景色设置以及item点击无响应等相关问题

    Android ListView的item背景色设置以及item点击无响应等相关问题 在Android开发中,listview控件是非常常用的控件,在大多数情况下,大家都会改掉listview的ite ...

  4. collectionView代理方法快速设置cell大小上下左右间隔

    #define JianGe 25 #define GeShu 4 #define ScreenWidth ([UIScreen mainScreen].bounds.size.width) #def ...

  5. 44.Android之Shape设置虚线、圆角和渐变学习

    Shape在Android中设定各种形状,今天记录下,由于比较简单直接贴代码. Shape子属性简单说明一下:  gradient -- 对应颜色渐变. startcolor.endcolor就不多说 ...

  6. 【大盛】HTC one/M7 ROM 最新本地化OrDroid8.2.6 高级、快速设置 永久root 更多自定义 稳定 流畅

    了解更多:点击下载ROM和学习更多 ROM版本 HTC-one_OrDroid8.2.6 ROM作者 雪狼团队·大盛 http://weibo.com/DaShengdd Android版本 Andr ...

  7. android 通过shape设置圆形按钮

    Android中常常使用shape来定义控件的一些显示属性来美化UI: shape的常用属性有: (1)solid:填充,设置填充的颜色: (2)stroke:描边,设置边界的宽度.颜色等: (3)c ...

  8. android的快速开发框架集合

    出自:http://blog.csdn.net/shulianghan/article/details/18046021 1.Afinal  (快速开发框架) 简介:http://www.oschin ...

  9. Android开发技巧——设置系统状态栏颜色

    开门见山,先来三张效果图: 然后我们再来讲如何实现以及如何快速地实现. 如何实现 实现设置系统状态栏颜色需要至少在Android 4.4.2(API 19)以上.这是因为,在这个版本以下,没有任何的A ...

  10. 【大盛】全网首发HTC One/M7 最新本地化TrickDroid9.0/固件升级/永久root/高级,快速设置/稳定,流畅经典ROM

    了解更多请关注:点击打开链接 ROM版本 HTC One/M7_TrickDroid9.0.0 ROM作者 雪狼团队-大盛   http://weibo.com/DaShengdd Android版本 ...

随机推荐

  1. vue3的setup语法糖

    https://blog.csdn.net/weixin_44922480/article/details/127337914 https://blog.csdn.net/m0_63108819/ar ...

  2. 互异关系容斥&集合幂级数小记

    最近碰见了一些互异关系容斥的题目,而这类题目往往要配合集合幂级数的一些技术使用,所以简单记记. 内容很杂,行文很乱,作者水平很低,酌情观看. 互异关系容斥 思想其实很基本,应用范围其实很广. 原论文. ...

  3. 2022-09-11:arr是一个可能包含重复元素的整数数组,我们将这个数组分割成几个“块”, 并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。 我们最多能将数组分成

    2022-09-11:arr是一个可能包含重复元素的整数数组,我们将这个数组分割成几个"块", 并将这些块分别进行排序.之后再连接起来,使得连接的结果和按升序排序后的原数组相同. ...

  4. 2022-05-02:给定一个数组arr,一个正数num,一个正数k, 可以把arr中的某些数字拿出来组成一组,要求该组中的最大值减去最小值<=num, 且该组数字的个数一定要正好等于k, 每个数字只

    2022-05-02:给定一个数组arr,一个正数num,一个正数k, 可以把arr中的某些数字拿出来组成一组,要求该组中的最大值减去最小值<=num, 且该组数字的个数一定要正好等于k, 每个 ...

  5. 2021-06-25:只由小写字母(a~z)组成的一批字符串,都放在字符类型的数组String[] arr中,如果其中某两个字符串所含有的字符种类完全一样,就将两个字符串算作一类,比如:baacbba

    2021-06-25:只由小写字母(a~z)组成的一批字符串,都放在字符类型的数组String[] arr中,如果其中某两个字符串所含有的字符种类完全一样,就将两个字符串算作一类,比如:baacbba ...

  6. select_related和prefetch_related函数

    在数据库存在外键的其情况下,使用select_related()和prefetch_related()很大程度上减少对数据库的请求次数以提高性能 在表中查找数据的时候,使用外键表related_nam ...

  7. 关于ESXi下如何查看磁盘SMART信息(SATA & NVMe)的教程

    ESXi下查看磁盘SMART比较麻烦,并且SATA协议的和NVMe协议的操作不一样,下面分别进行详细陈述 SATA--使用smartctl查看 本部分参考梦幻生命@CSDN(原文链接https://b ...

  8. Springboot 开启异步任务Async,邮件发送任务,定时任务

    异步任务 1.主启动类开启异步注解 2.service目录下开启异步任务注解 @Service public class AsyncService { @Async//异步任务注解的标志 public ...

  9. vue项目提示TypeError: e.call is not a function

    最近运行vue项目老是提示TypeError: e.call is not a function 如上一运行到该页面就会提示这个错误,虽然页面功能都没受到影响,但是这个必定会给后期发布后的项目带来极大 ...

  10. Django 有关 models 数据类型介绍:

    在model中添加字段的格式一般为:  field_name = field_type(**field_options) 一  field options(所有字段共用) 1  null   默认为F ...