首先我们的安卓的页面实际上的组件就是需要一些东西控制住他们

这些东西是什么呢,叫做布局管理器,一开始的开发中有常用的5款布局管理器

下面我来一一介绍其中的功能和一些关键字属性

1.relativelayout

相对布局管理器

属性:android:gravity

android:ignoreGravity

但是对于上面这两个属性是不足够把相对布局管理器的组件进行合理调配的,因为提供了一个内部类

RelativeLayout.LayoutParams,通过这个类提供的XML属性,这些属性是在相对布局管理器的组件上使用的

注意:以下属性需要在子组件上设置,不是在布局管理器上设置,不要搞混

这4个属性是相对于某个组件的ID号进行相对布局

这4个组件是设置组件和父容器对齐位置,属性值是布尔类型

这4个组件是设置与某一个组件的上下左右的边对齐

这三个属性是设置组件在布局管理器中的位置是水平居中,中央居中,垂直居中

2.linearlayout

线性布局管理器(很常用)

属性:

android:orientation="vertical"垂直分布

android:orientation="horizontal"水平分布

android:gravity(居中,居左......)

注意:例如在垂直分布属性中,每一行只能放一个组件,且组件不会进行换行。整个页面被排满后排到窗体边缘后,剩下的组件不会显示出来

子组件属性:

andorid:layout_weight=“1/2/3......”(权重分配)

组件占父空间剩余的比例,按照剩余的空间进行重新分配

3.framelayout

帧布局管理器:

以屏幕左上角为坐标原点进行组件覆盖,通常用于重叠、拖动的效果

属性:

android:foreground(设置前景图像,什么是前景图像,始终位于最上层)=“@图片资源位置”

android:foregroundGravity(设置前景图像位置)="位置常量|right|bottom......"

4.tablelayout

表格布局管理器

属性:

android:collapseColumns="1"(意味着隐藏第二列)

android:collapseColumns="1,2,3"(意味着隐藏第二、三、四列)

android:stretchColumns="1"(意味着第二列允许被拉伸,可以把组件横向拉伸直到该行的组件填满)

因为表格布局管理器不会自动换行,只能跨列

android:shrinkColumns="1"(意味着第二列允许被压缩,适用于某一行的组件超过屏幕横向大小)

需要搭配<tableRow></tableRow>使用

在<tableRow></tableRow>中写入组件,就可以看到在这一行内的分布了

5.absolutelayout(安卓2.0的时候就标记为已过期,因为适配性太差)

6.gridlayout

网格布局管理器(区别在于更加灵活,内容可跨列或者跨行显示,超出页面的大小会自动换行)

属性:

android:columnCount(指定网格最大列数)

android:orientation(指定排列方式,竖直还是水平)

android:rowCount(指定网格最大行数)

子组件:

GridLayout.LayoutParams

属性:

1.组件位于第几列

2.组件跨几列(这个要搭配4使用)

4.组件的填充拉伸(这个要搭配2和6使用)

5.组件位于第几行

6.组件跨几行(这个要搭配4使用)

Android studio的布局总结相关推荐

  1. Android Studio 线性布局Linearlayout的控件位置控制l属性Layout_margin失效问题解决

    Android Studio 线性布局Linearlayout的控件位置控制l属性Layout_margin失效问题解决 问题:如layout_marginRight ="50dp" ...

  2. 设置Android Studio工程布局文件的默认布局

    每次创建新的工程后,布局文件的的布局总是ConstraintLayout,如何更改? 进入Android Studio安装目录,用文本编辑器打开文件plugins\android\lib\templa ...

  3. android studio页面布局代码,还在用Android正经布局来写页面吗?

    来源:24K纯帅 ConstraintLayout布局出来已经很久了,刚出来那会儿就想尝试一下的,结果半天都没适应,前两天看到一篇ConstraintLayout实战的文章,看完之后发现这布局贼鸡儿好 ...

  4. android studio 页面布局

    哈哈哈,首先我也是初学android studio 这个软件,在Android中首先要学会布局, ①在布局中Design界面可以通过Palette中控件拖动到界面布局中 ②可通过在split界面编写代 ...

  5. Android Studio:线性布局

    目录 一.导入新课 二.新课讲解 (一)界面与布局 1.界面 2.布局 (1)视图层次结构图 (3)UI控件 (Control) (4)两种方式声明布局 (二)线性布局 1.继承关系图 2.常用属性 ...

  6. android studio线性布局做计算器,Android Studio线性布局元素Listen

    我对android studio相当陌生,有点迷茫. 我有一个线性布局,最终会有图像的子代.这些孩子被认为是我手中的牌.当轮到我的时候,我会在线性布局中添加一个项目,当我点击一个卡片时,它将被移除. ...

  7. Android studio线性布局用户界面设计

    Android studio通过线性布局完成一个简单的个人信息的用户界面布局设计 线性布局需要考虑的就是水平还是垂直,通过 LinearLayout标签的一个必要属性android:orientati ...

  8. android studio线性布局做计算器,Android studio设计简易计算器

    本文实例为大家分享了Android studio设计简易计算器的具体代码,供大家参考,具体内容如下 效果显示: 第一步,简单的界面布局 xmlns:tools="http://schemas ...

  9. Android Studio学习——布局

    Android Studio布局详解 布局是什么? 布局的分类 布局的创建和加载 8种布局详解 线性布局LinearLayout 相对布局RelativeLayout 帧布局 FrameLayout ...

  10. Android studio相对布局

    相对布局(Relative Layout) 通过相对定位的方式指定控件位置,即以其它控件或父容器为参照物,摆放控件的位置,在设计相对布局时要遵循控件之间的依赖关系,后放入控件的位置依赖于先放入的控件. ...

最新文章

  1. 函数加上简单用户名密码认证
  2. JZOJ 5221. 【GDOI2018模拟7.10】A
  3. Quartz.net 2.0的使用说明
  4. ionic 支持float吗_机器人协会 | 一起拼机器人吗?
  5. iOS回顾笔记( 01 )-- XIB和纯代码创建应用的对比
  6. Ubuntu(Deban)中安装VirtualBox
  7. 机器学习之旅:支持向量机通俗导论(理解SVM的三层境界)
  8. 初学RubyOnRails的推荐书籍
  9. 二维码生成代码(转载)
  10. gcc 如何编译cpp文件啊
  11. 跳马问题:马走日,请问马从0,0位置出发,走到x,y目标点,还必须走k步,有多少种走法
  12. Ubuntu16环境安装和使用NFS
  13. Egret Wing常用快捷键
  14. MVP释义:做最小可行产品
  15. html+js的lrc歌词同步播放器
  16. 企业邮箱发信数量是多少?
  17. 各版本sqlserver下载地址
  18. 微信小程序开发—入门到跑路(一)
  19. JAVA跨考_考研人的2019——一战跨考清华计算机的血泪史
  20. maven项目调转servlet 500异常

热门文章

  1. C/C++ scanf 函数中%s 和%c 的简单差别
  2. 数据结构与算法系列——从菜鸟到入门
  3. 初探弹出层的实现原理
  4. 一个Excel导出类的实现过程(一):泛型与反射
  5. 转载(四).Net Framework中的委托与事件
  6. 装修相片(第50天拍,全部,25号更新)
  7. 关于考研与工作(人生规划)的个人思考
  8. 计算机插件技术应用原理,计算机软件技术中插件技术的运用
  9. vscode写java没有提示_VS Code报错Language Support for Java(TM)插件显示需要JDK11 写java代码没有提示...
  10. mssql与oracle不同点,MySql,Mssql,Oracle的优缺点和异同(欢迎补充) *