我的Android进阶之旅------>如何在多个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> 例如:
- <?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
====================================================================================
最新文章
- Bootstrap框架(基础篇)之列表,表格,表单
- Java获取本机ip和服务器ip
- C# Double保留小数点后面位数
- ASP.NET 访问路径 错误提示 HTTP 错误 404.8 原来路径中包含bin目录被拒绝
- CentOS7 桌面的安装
- POJ1737 Connected Graph
- replication set复制集
- Android 高级UI设计笔记10:瀑布流控件PinterestLikeAdapterView的使用
- UVa 10701 - Pre, in and post
- Require,js配置使用心得
- HttpServletRequest对象
- JMeter压测基础(三)——Mysql数据库
- .netcore 堆栈调用方法小记
- Map.putAll方法——追加另一个Map对象到当前Map集合
- 将sublime添加到鼠标右键
- jmeter 连接 MySql
- Forword(请求转发)与Redirect(重定向)	区别
- WASAPI、DirectSound/DS、WaveOut、Kernel Streaming/KS
- [UE4]暂停游戏、退出游戏、游戏输入模式
- 成功设置open live writer
热门文章
- Linux下设置开机启动
- Resolving the Provisioning Profile Invalid Status
- Android Gradle 经验总结
- HDU4004
- Maven引入Hadoop依赖报错:Missing artifact jdk.tools:jdk.tools:jar:1.6
- poj1270Following Orders(拓扑排序+dfs回溯)
- doubango库改动Contact内容的地方
- 怎样在编译的时候,控制删除apk不用的资源?
- C# Excel
- 调试Scrapy过程中的心得体会