Android 为LinearLayout增加分割线 divider

参考文章
http://cyrilmottier.com/2014/11/17/grid-spacing-on-android/

在大多数情况下,我们都是使用Margin/Padding等属性来解决View间距的问题。
当UI是静态的时候这些工作都很简单,但它很难管理动态UI元素。

来看看下面这个布局,我为BUTTON1和BUTTON2增加了android:layout_marginRight属性

上面的布局看以来很不错,但是当我们隐藏掉BUTTON3时,布局就会变得像这样:


使用ListView、GridView等或许能解决类似的问题。但这些布局不允许你指定特定的元素间距

实际上,你可以为LinearLayout增加下面的属性来达到产生间距的目的

android:divider="@drawable"
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <size
        android:width="@dimen/spacing_medium"
        android:height="@dimen/spacing_medium" />
    <solid android:color="@android:color/transparent" />
</shape>
android:showDividers = "middle|end|beginning|none"
middle 在每一项中间添加分割线
end 在整体的最后一项添加分割线
beginning 在整体的最上方添加分割线
none 无 

注意:
如需兼容3.0以下版本,需要使用android.support.v7.widget.LinearLayoutCompat

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值