Android常用五大布局
一、说明
1.每个应用程序都默认包含一个主界面布局文件(.xml)。
2.位于项目的app/src/main/res/layout目录。
3.宽度和高度的属性
match_parent:强制性的使使徒扩展至父元素大小。
wrap_content:强制性地使视图扩展以显示全部内容。
4.布局文件名称只能包含小写字母(a-z)数字(0-9)和下划线组成,并且只能是小写字母开头。
5.五大布局:

二、布局文件的创建

三、线性布局(LinearLayout)

1.常用属性
orientation:布局中组件的排列方式,有horziontal(水平)和vertical(垂直)两种方式。
gravity:控制组件所包含的子元素的对齐方式,可多个组合,如(left|buttom)。
layout_gravity:控制该组件在父容器里的对齐方式。
layout_width:布局的宽度,通常不直接写数字,用wrap_content(组件实际大小),fill_parent或者match_parent填满父容器。
layout_height:布局的高度,参数同上。
id:为该组件设置一个资源id,在java文件中可以通过findViewByid(id)找到该组件。
background:为该组件设置一个背景图片,或者直接用颜色覆盖。
2.Weight(权重)
该属性是用来等比例地划分区域。
要等比例划分,分谁,谁的layout_width="0dp",,layout_weight按比例即可。
四、相对布局(RelativeLayout)
1.基本属性
gravity:设置容器内组件的对齐方式。
ignoreGravity:设置了该属性为true的属性的组件,将不受gravity属性的影响。
2.根据父容器定位
layout_alignParentLeft:左对齐。
layout_alignParentRight:右对齐。
layout_alignParentTop:顶部对齐。
layout_alignParentBottom:底部对齐。
layout_centerHorizontal:水平居中。
layout_centerVertical:垂直居中。
layout_centerInParent:中间位置。
3.根据兄弟组件定位
layout_toLeftOf:参考组件的左边。
layout_toRightOf:参考组件的右边。
layout_above:参考组件的上方。
layout_below:参考组件的下方。
layout_alignTop:对齐参考组件的上边界。
layout_alignBottom:对齐参考组件的下边界。
layout_alignLeft:对齐参考组件的左边界。
layout_alignRight:对齐参考组件的右边界。
4.margin(偏移)
layout_margin:设置组件上下左右的偏移量。
layout_marginLeft:设置组件离左边的偏移量。
layout_marginRight:设置组件离右边的偏移量。
layout_marginTop:设置组件离上面的偏移量。
layout_marginBottom:设置组件离下面的偏移量。
5.padding(填充)
padding:往内部元素的上下左右填充一定边距。
paddingLeft:往内部元素的左边填充一定边距。
paddingRight:往内部元素的右边填充一定边距。
paddingTop:往内部元素的上方填充一定边距
paddingBottom:往内部元素的下方填充一定边距。
五、表格布局(TableLayout)

1.说明
(1)需要和TableRow标记配合使用,TableRow的数量决定表格的行数。
(2)表格的列数是由包含最多控件的TableRow决定的。
(3)TableRow的layout_width属性默认为match_parent,其他值不会生效。
(4)layout_height默认是wrap_content,可以设置大小。
(5)整个表格布局的宽度和取决于父容器的宽度。
2.常用属性
collapseColumns:设置需要被隐藏的列的序号。
shrinkColumns:设置允许被收缩的列的序列号。
stretchColumns:设置允许被拉伸的列的序列号。
注意:列号从0开始。
layout_column=“2”跳过第二个格子,直接显示到第三个格子处。
layout_span="4"合并四个单元格
六、帧布局(FrameLayout)
直接开辟一块空白区域,拖进去的控件默认位置左上角。
前景图像:用于处于帧布局最上面,直接面对用户的图像,是不会被覆盖的图片。
1.常用属性
foreground:用来设置帧布局容器的前景图像。
foregroundGravity:用来设置帧布局容器的前景图像显示的位置。
七、绝对布局(AbsoluteLayout)
layout_x:横坐标
layout_y:纵坐标
Android常用五大布局的更多相关文章
- Android菜鸟成长记7 -- Android的五大布局
Android五大布局,相信android的都了解过,今天我根据自己的学习整理一下五大布局,主要介绍的是线性布局(LiearLayout),因为,其他的布局使用率不是很高. Android的五大布局 ...
- [置顶] Android系统五大布局详解Layout
我们知道Android系统应用程序一般是由多个Activity组成,而这些Activity以视图的形式展现在我们面前,视图都是由一个一个的组件构成的.组件就是我们常见的Button.TextEdit等 ...
- Android系统五大布局详解Layout
我们知道Android系统应用程序一般是由多个Activity组成,而这些Activity以视图的形式展现在我们面前, 视图都是由一个一个的组件构成的.组件就是我们常见的Button.TextEdit ...
- android的五大布局(layout)
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建 筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Android的五大布局分别是LinearLa ...
- Android学习----五大布局
1.LinearLayout 线性布局 android:orientation="horizontal" 制定线性布局的排列方式 水平 horizontal 垂直 vertical ...
- Android笔记——Android五大布局
一.五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Android的五大布局分别是Li ...
- Android——五大布局
Android的五大布局分为: 线性布局 相对布局 帧布局 绝对布局 表格布局 一.线性布局 线性布局在开发中使用最多,具有垂直方向与水平方向的布局方式 通过设置属性"android:ori ...
- Android 五大布局(LinearLayout、FrameLayout、AbsoulteLayout、RelativeLayout、TableLayout )
前言 欢迎大家我分享和推荐好用的代码段~~ 声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net ...
- 浅谈Android五大布局
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Android的五大布局分别是LinearLay ...
随机推荐
- UVA-2【NOI2014】起床困难综合症
#2. [NOI2014]起床困难综合症 21 世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm 一直坚持与起床困难综合症作斗争.通过 ...
- tarjan 算法应用
主要讲证明,流程倒是也有 然后发现自己并不会严谨证明 其实后面一些部分流程还是挺详细 本来这篇blog叫做"图论部分算法证明",然后发现OI中的图论想完全用数学上的方法证明完全超出 ...
- [bzoj1924]P2403 [SDOI2010]所驼门王的宝藏
tarjan+DAG 上的 dp 难点在于建图和连边,其实也不难,就是细节挺恶心 我和正解对拍拍出来 3 个错误... 传送门:luogu bzoj 题目描述 有座宫殿呈矩阵状,由 \(R\times ...
- CC2530串口通信
任何USART双向通信至少需要两个脚:接收数据输入(RX)和发送数据输出(TX). RX:接收数据串行输入.通过采样技术来区别数据和噪音,从而恢复数据. TX :发送数据输出.当发送器被禁止时,输出引 ...
- 高性能mysql第三版读书笔记3
innodb以前不支持高并发,在搞病房下就是悲剧,全部卡在mutex(缓冲池mutex)上,现在通过线程调度器控制线程怎么进入内核访问数据,参数为innodb_thread_concurrency,它 ...
- 软路由OpenWrt(LEDE)2020.5.10更新 UPnP+NAS+多拨+网盘+DNS优化
近期更新:2020.05.10更新-基于OpenWrt R2020.5.9版本,源码截止2020.05.10. 交流群:QQ 1030484865 电报 t.me/t_homelede 版本说 ...
- AbstractList源码分析
AbstractList 1 类图 2 字段 // 默认容量 private static final int DEFAULT_CAPACITY = 10; // 共享的空数组 private sta ...
- 你应该知道的Python3.6、3.7、3.8新特性
很多人在学习了基本的Python语言知识后,就转入应用阶段了,后期很少对语言本身的新变化.新内容进行跟踪学习和知识更新,甚至连已经发布了好几年的Python3.6的新特性都缺乏了解. 本文列举了Pyt ...
- 最简单的手机预览WEB移动端网页的方法
网上看了很多关于该问题的解决办法,各种各样的都有,个人也测试了一些, 最后总结出一个最简单且实用的方法. 1.安装nodejs node官网下载对应版本的nodejs,安装好了之后,在node.js执 ...
- 设计模式之GOF23解释器模式
解释器模式Interpreter -是一种不常用的设计模式 -用于描述如何构成一个简单的语言解释器,主要用于使用面向对象语言开发的编译器和解释器设计 -当我们需要开发一种新的语言时,可以考虑使用解释器 ...