L3Byb3h5L2h0dHAvcGhvdG8uamZxMjQuY29tL2ltYWdlL2JpZ2dlci90cy9zZXJ2ZXIvdXBsb2FkLzIwMTQtMTIvcGljLzE0MTc3NTEzNzE3NDl1My5wbmc=.jpg

如上图,要想实现3个button线性排列并且使它们的大小相同、间隔相等、而且整体填充满整个linearlayout,我们一般的做法是在每两个button之间放一个固定宽度的view,然后设置button的宽度为0、layout_weight为1。这样虽能实现功能,可是总感觉不方便,特别是button多的时候。

今天介绍另一种简单、优雅的方法,就是利用android:divider属性。

1、首先新建一个固有的width/height的Drawable:

spacer_medium.xml

android:shape="rectangle">

android:height="@dimen/spacing_medium" />

2.然后设置LinearLayout的android:divider="@drawable/spacer_medium",并设置android:showDividers="middle",这样就完美解决了linearLayout的元素之间的间隔问题。

android:layout_marginLeft="12dp"

android:layout_marginRight="12dp"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal"

android:divider="@drawable/spacer_medium"

android:background="#77000000"

android:showDividers="middle">

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="button"/>

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="button"/>

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="button"/>

参考:http://blog.csdn.net/startupmount/article/details/41745715

一起学android之怎样设置TextView中不同字段的字体颜色(22)

在这里先看看效果图: OK,有时候,在我们的项目中会要求TextView中文本有一部分的字体颜色不一样.这时我们应该使用 SpannableStringBuilder这个工具类,当然这个类的功能非常强 ...

利用Jquery获取、设置iframe中元素

'; //iframe加载完成后 $(" ...

【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性

在进行UI布局的时候,可能常常会用到 android:gravity  和 android:layout_Gravity 这两个属性. 关于这两个属性的差别,网上已经有许多人进行了说明,这边再简单说一 ...

ZT Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性

Android布局]在程序中设置android:gravity 和 android:layout_Gravity属性 分类: [Android基础] 2011-04-19 16:06 54739人阅读 ...

【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性——位置设置偏向

LinearLayout有两个非常相似的属性: android:gravity与android:layout_gravity. 他们的区别在于: android:gravity 属性是对该view中内 ...

【转】在程序中设置android:gravity 和 android:layout_Gravity属性

在进行UI布局的时候,可能经常会用到 android:gravity  和 android:layout_Gravity 这两个属性. 关于这两个属性的区别,网上已经有很多人进行了说明,这边再简单说一 ...

我的Android进阶之旅------>怎样在多个LinearLayout中加入分隔线

假设要适合于全部的Android版本号,能够在多个LinearLayout放置用于显示分隔线的View. 比如,放一个ImageView组件.然后将其背景设为分隔线的颜色或图像,分隔线View的定义代 ...

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

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

Android 布局学习之——LinearLayout的layout_weight属性

一直对layout_weight属性感到比较困惑,今天学习一下,来深入了解layout_weight属性和它的用法.     定义     首先,看看Android官方文档是怎么说的,毕竟人家才是权威 ...

随机推荐

python中x的平方

x ** 2 sqdEvens = [x ** 2 for x in range(8) if not x % 2] for i in sqdEvens: print(i) 0 4 16 36 > ...

php gd 生成日历图

oracle行转列和列转行

目录[-] 一.行转列 1.1.初始测试数据 1.2. 如果需要实现如下的查询效果图: 1.3.延伸 二.列转行 1.1.初始测试数据 1.2. 如果需要实现如下的查询效果图: 一.行转列 1.1.初 ...

git 用户手册

Git是一个分布式版本控制/软件配置管理软件,原来是linux内核开发者林纳斯·托瓦兹为了更好地管理linux内核开发而创立的.需要注意的是和GNU Interactive Tools,一个类似Nor ...

买面包和IoC

今天上午准备去一个阿姨,在那里买面包.这可能是由于小尺寸她的,因此,管理不规范,所以,当你买面包.没有人行.即使所有的大学生,似几乎没有这种意识.. . 但让我感到震惊的是.尽管没有排队,但阿姨似乎能 ...

python之socket编程------粘包

一.粘包 什么是粘包 只有TCP只有粘包现象,UDP永远不会粘包 所谓粘包问题主要还是因为接收方不知道之间的界限,不知道一次性提取多少字节的数据所造成的 两种情况发生粘包: 1.发送端需要等缓冲区满才 ...

TensorFlow 处理图片

目标:介绍如何对图像数据进行预处理使训练得到的神经网络模型尽可能小地被无关因素所影响.但与此同时,复杂的预处理过程可能导致训练效率的下降.为了减少预处理对于训练速度的影响,TensorFlow 提供了 ...

R语言数据集的技术

特征值选择技术要点 特征值选择技术要点(特征值分解) 作者:王立敏 文章来源:xiahouzuoxin 一.特征值分解 1.特征值分解 线性代数中,特征分解(Eigendecomposition),又 ...

[蓝桥杯]PREV-15.历届试题_格子刷油漆

题目描述: 代码如下: #include #include #include #define MOD ...

swift - 听云监测(Testin - Bugout) - 集成

听云的SDK集成放的太难找了,官方demo到现在也没找到.. 我找了半天没找到在哪,看下面俩链接吧, 切记:添加的三方库 以文档为主,视频里的三方库 不一定正确 iOS SDK 集成:https:// ...

Logo

一站式 AI 云服务平台

更多推荐