最近开始复习Android,突然发现自己以前没怎么写笔记,没有体系。一看Android的布局都有七大了,所以决定一边复习,一边记录。

七大布局分别为:线性布局(LInearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)、表格布局(TableLayout)、绝对布局(absoluteLayout)、网格布局(GridLayout)、约束布局(ConstraintLayout)

1.线性布局(LInearLayout)

主要属性:

1.1 orientation设置布局管理器内组件的排列方式,可以设置为horizontal(横向)、vertical(纵向)两个值之一

1.2 gravity设置布局管理器内组件的对齐方式,layout_gravity控制自己在父元素的位置。

1.3 layout_weight设置权重,推荐layout_width="0dp"或layout_height="0dp"。

2.相对布局(RelativeLayout)

主要属性:

3.帧布局(FrameLayout)

继承自ViewGroup组件,很少使用这个布局,主要可以使布局叠加。FrameLayout为每个加入其中的组件创建一个空白的区域(称为一帧),每个子组件占据一帧,这些帧会根据gravity属性执行自动对齐。

4.表格布局(TableLayout)

TableLayout包裹TableRow(行数),

TableRow包裹view(列数)。

shrinkColumns属性:当TableRow里边的空间布满布局的时候,指定列自动延伸以填充可用部分。当TableRow里边的控件还没有布满布局时,不起作用。 

tretchColumns属性:设置可伸展的列。该列可以向行方向伸展,最多可占据一整行。

collapseColumns属性:设置要隐藏的列。

5.绝对布局(absoluteLayout)

绝对布局是需要指定子元素的 xy 精确坐标的布局。绝对布局缺乏灵活性,在没有绝对定位的情况下相比其他类型的布局更难维护,不建议使用。

6.网格布局(GridLayout)

Android4.0(API Level 14)新引入的网格矩阵形式的布局控件。

使用的时候需要注意兼容:

compile 'com.android.support:gridlayout-v7:22.+'

7.约束布局(ConstraintLayout)

Android Studio 2.2推出的新布局,并从Android Studio 2.3开始成为默认布局。

它的出现是为了解决复杂布局时,布局嵌套过多的问题(嵌套布局会增加绘制界面所需的时间)

相关属性

更多相关文章

  1. 让android定时关机的实现方法
  2. Android四大组件之~~Service
  3. Android分享界面制作(底部滑出动画)
  4. android:layout_weight的真实含义
  5. 一个不错的启动菜单显示屏动画效果
  6. Android(安卓)字体自适应设置
  7. Android(安卓)中 PopupWindow的用法 汇总
  8. Android之HttpsURLConnection访问网络(android https协议)
  9. android edittext的属性

随机推荐

  1. Android开发者不可或缺的四大工具
  2. Study on Android【五】--自定义ContentP
  3. Android(安卓)进程管理
  4. 配置Vim开发Android详解
  5. 2013学Android不得不看的13个视频课程(共
  6. android工程gen目录无法生成的解决办法汇
  7. android sdk 安装更新慢:下载android sdk
  8. android UI进阶之android中隐藏的layout
  9. Android(安卓)Handler
  10. cocos2d-x iOS和Android同步开发 手机设