android 二次绘制 layout,我的Android进阶之旅------>如何在多个LinearLayout中添加分隔线...

a6ba6ea31b4169303fff5cd21edb8245.png

如果要适合于所有的Android版本,可以在多个LinearLayout放置用于显示分隔线的View。例如,放一个ImageView组件,然后将其背景设为分隔线的颜色或图像,分隔线View的定义代码如下:

android:layout_width="fill_parent"

android:layout_height="1dp"

android:background="#ffffff"

/>

效果如下:

ae6f90481b8370bf1f27b3c031ef2265.png

在Android3.0及以上版本,LinearLayout支持直接显示分隔线。设置标签的android:showDividers属性可以再LinearLayout的相应位置显示分隔线。如果有多个LinearLayout,显示效果和在LinearLayout之间加分隔线是一样的。

android:showDividers属性可以设置如下4个值:

none:不显示分隔线;

beginning:在LinearLayout的开始处显示分隔线;

end:在Linearlayout的结尾处显示分隔线;

middle:在LinearLayout中的每两个组件间显示分隔线:

除了需要设置android:showDividers属性外,还要设置android:divider属性,该属性表示分隔线的图像,需要一个Drawable ID

android:divider="@drawable/shape"

android:showDividers="middle|beginning|end|none"

1、android:divider="@drawable/shape"

drawable可以是图片文件,也可以是xml绘制的shape。

分割线如果是图片那就直接使用图片就行,如果要使用颜色就必须使用shape来显示,直接使用颜色或Color是没有用的

使用shape的时候要注意设置size属性不设置宽高分割线就不会显示出来,如果使用line那填充颜色只能使用stroke来显示颜色

使用shape的时候一定要添加 例如:

2、android:showDividers = "middle|end|beginning|none"

middle 在每一项中间添加分割线

end 在整体的最后一项添加分割线

beginning 在整体的最上方添加分割线

none 无

在Java代码中可以使用下面两个方法设置android:showDividers和android:divider

linearLayout.setShowDividers:设置android:showDividers属性。

linearLayout.setDividerDrawable: 设置android:divider属性。

PS:可以参考

====================================================================================

作者:欧阳鹏  欢迎转载,与人分享是进步的源泉!

====================================================================================

a6ba6ea31b4169303fff5cd21edb8245.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值