欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  技术分享

Android自定义分割线_水平及垂直分割线的两种实现方法

程序员文章站 2022-03-01 12:57:44
...

很多时候我们在做Android开发的时候、需要设置Item和Item的分割线、尽管不是在ListView里面、我们也会使用到分割线来区分不同选项、达到条目清晰的目的、比如下图中使用了横向的分割线、有长有短的、那么这里分享两种实现分割线的方法、供大家参考

Android自定义分割线_水平及垂直分割线的两种实现方法


一、自定义Style实现分割线

1、水平分割线Style

<style name="common_horizontal_division_line_style">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">0.5dp</item>
    <item name="android:orientation">horizontal</item>
    <item name="android:background">#dddddd</item>
</style>


2、垂直分割线

<style name="common_vertical_division_line_style">
    <item name="android:layout_width">0.5dp</item>
    <item name="android:layout_height">match_parent</item>
    <item name="android:background">#dddddd</item>
</style>


3、使用LinearLayout调用

<LinearLayout style="@style/common_horizontal_division_line_style" />


二、LinearLayout标签的android:showDividers属性

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


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

1、none:不显示分隔线

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

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

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


除了需要设置android:showDividers属性外、还要设置android:divider属性、该属性表示分隔线的图像、需要一个Drawable ID、当然现在我们可以直接使用mipmap ID、渲染的效果会更好、速度会更快


三、总结

其实两种方式都能很好的实现分割线的效果、第一种方式相对比较灵活、可长可短、可粗可细、还可以垂直显示、第二种方法有局限性、但实现的方法比较简单、mipmap ID可以是图片、也可以是一个自定义的xml、具体还得看需求来选择要使用的方法、个人比较偏向第一种方式