设为首页 加入收藏

TOP

Android_布局(一)
2019-09-17 14:37:52 】 浏览:101
Tags:Android_ 布局

<该文章参考各大博客以及书籍总结而来,如有问题欢迎指出^ ^>

一、五大传统布局+新布局

  • 线性布局——LinearLayout
  • 相对布局——RelativeLayout
  • 帧布局——FrameLayout
  • 绝对布局——AbsoluteLayout
  • 表格布局——TableLayout
  • 约束布局——ConstraintLayout

二、介绍

(一)LinearLayout

1.简介

线性布局,是最常用的布局之一,这个布局会将它所包含的控件在线性方向上依次排列,排列方向可以设定为水平方向或垂直方向。

2.属性

 排列方向:

1 android:orientation="horizontal" //水平 
2 android:orientation="vertival" //垂直 

对齐方式:

1 android:gravity="centestar|end|top|left|right|center_vertical|center_horizontal"
2 android:layout_gravity

注意:android:gravity 指本元素的子元素相对它的对齐方式

          android:layout_gravity指本元素相对它的父元素的对齐方式

          但凡加上'layout_'前缀的属性,则意味着是本元素相对其父元素的属性

          center :居中显示,但并不表示显示在LinearLayout的中心,当LinearLyout线性方向为垂直方向时,等同于center_horizental;水平方向时,等同于cental_vertical

          start和left end和right :这里对于中国的情况,两者的效果是相同的。left是绝对的左边,right是绝对的右边,而start会根据不同的国家改变习惯。

子控件的大小:

1 android:layout_weight ="1"  //权重
2 android:layout_width="match_parent|wrap_content|xdp"
3 android:layout_height="match_parent|wrap_content|xdp"

注意:layout_weight :用来分配当前控件在剩余空间的大小

          当我们是使用layout_weight时,此时控件的宽度不应该再用layout_width来决定,这里指定0dp是一种比较贵规范的写法。(dp是Android中用于指定控件大小、间距等属性的单位)

 

(二)RelativeLayout

1.简介

相对布局相对于线性布局更为随意,它可以通过相对定位的方式让空间出现在布局的任何位置。相对布局可以让子控件相对于兄弟控件或父控件进行布局。

2.属性

子控件常用布局:

 

 1 //相对于父控件
 2 android:layout_alignParentTop  //空间的顶部与父控件的顶部对齐
 3 androif:layout_alignParentBottom  //控件的底部与父控件的底部对齐
 4 android:layout_alignParentLeft  //控件的左部与父控件左部对齐
 5 android:layout_alignParentRight  //控件的右部与父控件的右部对齐
 6   
 7 //相对给定id控件
 8 android:layout_above  //控件的底部置于给定控件之上 9 android:layout_below  //控件的底部置于给定控件之下
 9 android:layout_toLeftOf //控件的右边缘于给定控件左边缘对齐
10 android:layout_toRightOf  //控件的左边缘于给定控件右边缘对齐
11 
12 android:layout_alighBaseline  //控件的baseline与给定控件的baseline对齐
13 android:layout_alignTop  //控件的顶部边缘与给定控件的顶部边缘对齐
14 android:layout_alignBottom  //控件的底部边缘与给定控件的底部边缘对其
15 android:layout_alignLeft  //控件的左边缘与给定控件的左边缘对齐
16 android:layout_alignRight  //控件的右边缘与给定控件的右边缘对齐
17 
18 //居中
19 android:layout_centerHorizontal  //水平居中
20 android:layout_centerVertical  //垂直居中
21 android:layout_centerparent  //父控件中央
22 
23 //属性值为具体像素值:dp、px
24 android:layout_marginBottom   //离某元素底边缘的距离
25 android:layout_marginLeft   //离某元素做边缘的距离
26 android:layout_marginRight  //离某元素右边缘的距离
27 android:layout_marginTop  //李某元素上边缘的距离
28 android:padding
29 android:paddingTop
30 android:paddingLeft
31 android:paddingRight

 

 

 

 

注意:当一个控件去引用另外一个控件的id时,该控件一定要定义在引用控件的后面,不然会出现找不到id的情况

          'align' 排列;‘alignParent’排列在父容器的某个位置

          在最新版本的Android中,单独使用包含Start或者End属性的话,会报错,提示需要再加入Left和Right属性;而单独使用Left和Right属性,会提示一个waring,提示推荐加入Star或者End属性

          margin 边缘(外边距);padding 衬垫,填充(内边距)

          

 

(三)FrameLayout

1.简介

最简单的一种布局,所有的控件都会默认摆放在布局的左上角。后续添加的控件会覆盖前一个。帧布局的应用场景并不是很多,不过经常配合Fragment使用/

2.属性

1 android:foreground   //设置改帧布局的前景图像
2 android:foregroundGravity  //设置前景图像显示的位置
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇MTK Recovery 模式横屏修改(适用.. 下一篇Android 极光IM-高级篇-玩聊天app..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目