我的Android进阶之旅------>如何在多个LinearLayout中添加分隔线

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


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

<ImageView   
        android:layout_width="fill_parent"  
        android:layout_height="1dp"  
        android:background="#ffffff"  
        />  
效果如下:


在Android3.0及以上版本,LinearLayout支持直接显示分隔线。设置<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的时候一定要添加<size> 例如:

[java]  view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android">  
  3.     <solid android:color="@color/account_line" />  
  4.     <size android:height="1px" />  
  5. </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:可以参考

Android 自定义控件 优雅实现元素间的分割线 (支持3.0以下)

     地址:http://blog.csdn.net/lmj623565791/article/details/42407923

 

 




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

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

  转载请保留原文地址http://blog.csdn.net/ouyang_peng

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

 


相关文章
|
8月前
|
XML Android开发 数据格式
android点击FrameLayout、LinearLayout等父布局没响应的原因以及解决方案
android点击FrameLayout、LinearLayout等父布局没响应的原因以及解决方案
200 2
|
8月前
|
API Android开发
Android高手进阶教程(十五)之---通过Location获取Address的使用!
Android高手进阶教程(十五)之---通过Location获取Address的使用!
82 1
|
8月前
|
数据可视化 Android开发 容器
Android UI设计: 请解释LinearLayout、RelativeLayout和ConstraintLayout的区别。
Android UI设计: 请解释LinearLayout、RelativeLayout和ConstraintLayout的区别。
265 5
|
7月前
|
Android开发 UED 开发者
Android 中的 LinearLayout 布局
Android 中的 LinearLayout 布局
|
7月前
|
存储 算法 Java
Android 进阶——代码插桩必知必会&ASM7字节码操作
Android 进阶——代码插桩必知必会&ASM7字节码操作
328 0
|
8月前
|
缓存 网络协议 Java
挑战全网,史上最全Android开发进阶,跳槽复习指南(1),掌握这6大技能体系
挑战全网,史上最全Android开发进阶,跳槽复习指南(1),掌握这6大技能体系
|
8月前
|
XML Android开发 数据格式
Android五大布局对象---FrameLayout,LinearLayout ,Absolute
Android五大布局对象---FrameLayout,LinearLayout ,Absolute
50 1
|
7月前
|
Android开发
07. 【Android教程】Android 线性布局 LinearLayout
07. 【Android教程】Android 线性布局 LinearLayout
185 0
|
8月前
|
算法 安全 Java
2024年Android最新知识体系最强总结(全方面覆盖Android知识结构,BAT面试&学习进阶)
2024年Android最新知识体系最强总结(全方面覆盖Android知识结构,BAT面试&学习进阶)
|
8月前
|
消息中间件 缓存 架构师
2024年阿里Android高级面试题分享,附学习笔记+面试整理+进阶书籍
2024年阿里Android高级面试题分享,附学习笔记+面试整理+进阶书籍