假设要适合于全部的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> 比如:
-
<?
xml version=
"1.0" encoding="utf-8"?> - <shape xmlns:android="http://schemas.android.com/apk/res/android">
- <solid android:color="@color/account_line" />
- <size android:height="1px" />
- </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
====================================================================================