欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新

Android LinearLayout快速设置每个item间隔,

来源: 开发者 投稿于  被查看 7364 次 评论:157

Android LinearLayout快速设置每个item间隔,


原文地址: 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

参考

  • 如何只指定一次LinearLayout的元素之间的间距?

提问之前,请先看提问须知 点击右侧图标发起提问 或者加入QQ群一起学习 TornadoFx学习交流群:1071184701

用户评论