博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android布局中涉及的一些属性
阅读量:6239 次
发布时间:2019-06-22

本文共 1889 字,大约阅读时间需要 6 分钟。

Android:gravity属性

    线性布局常见的就是利用LinearLayout进行布局,其中有个比较重要的属性就是android:gravity,在中是这么描述这个属性的:指定一个元素怎么放置它的内容,包括在X和Y轴,在它自己的边框中。

下面我们将在一个简单的TextView中应用android:gravity属性。假设我们想要TextView内的内容在右侧显示,那么我们就可以编写对应的XML布局

效果如下图

盒模型

为了更加准确地控制TextView里面内容的位置,我们可以使用一系列的padding属性来控制。在使用padding属性之前,先科普一下padding和Marigin之间的区别,然后我们在通过实际的效果看看他们之间的差异。

下图所示是一个类似盒子的模型,我们将通过下面的模型来讲解Padding和Marigin之间的区别。从图中可以看出,在Container(父控件)里面有一个子控件,假设是一个TextView控件。其中Margin是子控件与父控件之间的间隔大小。Border是子控件的边框,它是子控件和父控件的边界。Padding是指子控件中的内容(Content Area)与子控件Border的间隔大小。

margin属性

Android中有一系列的margin属性,下面让我们看看其中的android:layout_marginRight属性,为了有一个对比的效果,我们先将marginRight设为0dip,再将其设为50dip,如以下两图所示

android:layout_marginRight="0dip"

android:layout_marginRight="50dip"

从上图中,我们可以看出,左图TextView控件跟他的父控件的是没有右间隔的,而右图明显的有一块间隔(见右图黄色圈圈部分)。

marginRight相同的还有以下属性,它们的原理都相同,就不一一细讲了。

属性名 相关方法 描述
Specifies extra space on the bottom side of this view.
Specifies extra space on the end side of this view.
Specifies extra space on the left side of this view.
Specifies extra space on the right side of this view.
Specifies extra space on the start side of this view.
Specifies extra space on the top side of this view.

 

padding属性

下面让我们来看看android:layout_paddingRight属性。我们将在以下布局中,通过改变android:layout_paddingRight属性,来看看变化。

为了有一个对比的效果,我们先将paddingRight设为0dip,再将其设为50dip,如以下两图所示

android:layout_paddingRight="0dip" android:layout_paddingRight="50dip"

从上图中,我们可以看出,左图TextView控件中的内容跟TextView的边框(border)是没有右间隔的,而右图明显的有一块间隔(见右图黄色圈圈部分)。

paddingRight相同的还有以下属性,它们的原理都相同,就不一一细讲了。

属性名 相关方法 描述
Sets the padding, in pixels, of all four edges.
Sets the padding, in pixels, of the bottom edge; see .
Sets the padding, in pixels, of the end edge; see .
Sets the padding, in pixels, of the left edge; see .
Sets the padding, in pixels, of the right edge; see .
Sets the padding, in pixels, of the start edge; see .
Sets the padding, in pixels, of the top edge; see .

 

转载地址:http://xabia.baihongyu.com/

你可能感兴趣的文章
深入理解javascript原型和闭包(9)——简述【执行上下文】下
查看>>
js 复制粘贴
查看>>
插入排序算法的C语言实现
查看>>
开学考试心得感想
查看>>
window下安装nodejs,npm,cnpm,bower 以及vue
查看>>
事件分发机制
查看>>
SQL Server性能优化(14)索引碎片
查看>>
ORA-01688表空间无法扩展
查看>>
Xcode c语言如何清空输入缓冲区
查看>>
Linux磁盘和文件系统管理(5)_创建交换分区
查看>>
业务分析
查看>>
Receive Windows Messages In NonWindowed Control
查看>>
MySQL之MHA+keepalived方案演示(五)
查看>>
mysql5.7和mysql5.6默认的sql_mode说明
查看>>
自动修改Linux下/etc/sysconfig/network-scripts/ifcfg-ethX网卡文件的脚本
查看>>
$(this) dom对象错误的问题
查看>>
Linux散碎知识点_updating
查看>>
iptables参数详解
查看>>
wpf中为DataGrid添加checkbox支持多选全选
查看>>
Oracle 查看 对象 持有锁的情况
查看>>