一、view视图的共有属性

 

1.宽高形式:

android:layout_width="xx"

android:layout_height="xx"

2. 宽高属性

    *固定值单位 dp (距离单位) sp(字体大小单位) px(像素不推荐使用)

    *match-parent (fill-parent) 填充满父布局

    *wrap-count 内容显示多少 填充布局就显示多少

 

3.通过id起名字:

    androud:id="@+id/name"

4.android:visibility:

    android:visibility="gone"表示当前视图是否可见 默认可见

    *gone表示 完全消失 隐藏不占用空间

    *visibility 可见

    *unvisibilty 不可见 但占用空间

 5.android:background:

 

    android:background=""设置背景

 

    *颜色代码:#FFFFFF

    *图片 mipmap

    *系统提供

    *自定义图片

6.android:layout_gravity:

    android:layout_gravity=""控制自己视图 相当于父布局的重心位置

    *参数:left right top bottom  可以用 | 连接并列关系

    *center:  vertical垂直 horizontak水平

7. margin 和padding的区别

        margin:通俗意思就是外边距,是指从自身边框带另一个容器边框之间的距离就是容器外边距

        padding:通俗意思即使内边距,是指自身边框带另一个容器边框之间的距离就是容器内距离 (负值无效)

8. margin 的用法:

 

    *android:layout_margin =“10dp” 外边距 四个方向都有

    *android:layout_marginLeft =“10dp” 外左边距

    *android:layout_marginTop =“10dp” 外上边距

    * android:layout_marginRight =“10dp” 外右边距

    *android:layout_marginButtom =“10dp” 外下边距

9 .padding的用法:

 

  android:padding=“10dp”

  android:paddingLeft= “10dp”左内边距

  android:paddingRight= “10dp”右内边距

  android:paddingTop= “10dp”上

  android:paddingButtom= “10dp”下

二、五大布局

 

1. LinearLayout:

线性布局: 水平或者垂直排列

                 子视图不可能重叠

注意事项:

 

1.android:oritation= “vertical”    表示子视图的排列方式是垂直  

“horizontal”  子视图水平排列   (该属性必须添加

Android 视图与五大布局_第1张图片

如图:必须添加此属性

2.android:layout_weight =“” 权重分配 剩余空间,  

做一个案例来体现此布局:

one:

Android 视图与五大布局_第2张图片

two:

Android 视图与五大布局_第3张图片

Three:

Android 视图与五大布局_第4张图片

与夜神连接结果如下:

Android 视图与五大布局_第5张图片

    

体现看权重效果下的比例,以及背景颜色设置和文字大小设置,button位置移动用了相对于父布局的距离实现

 

下面运用一个嵌套布局的技能演示:

one:

Android 视图与五大布局_第6张图片

two:

Android 视图与五大布局_第7张图片

three:

Android 视图与五大布局_第8张图片

运行结果如下:

Android 视图与五大布局_第9张图片

那么通过这个案例主要体现的思想是:

首先一个整体的布局是一个运用线性布局+垂直的一个效果,分成三部分

        第一部分为一个嵌套着的线性布局+水平的多个按钮设置,通过设置款高以及weight

        第二部分同上里面为textview

        第三部分同一

 

2.RelativeLayout  :

布局:相于某个视图或者父布局的位置   

该布局下的子视图可以重叠参照物

 

一、当参照物是父布局的

     1.android:layout_alignParentLeft=true  相对于父布局在父布局的左侧对齐

     2.android:layout_alignParentTop=true相对于父布局 在父布局的上侧对齐

     3.android:layout_alignParentButtom=true相对于父布局 在父布局的下侧对齐

     4.android:layout_alignParentRight=true相对于父布局 在父布局的右侧对齐

     5.android:layout_centerInParent=true  相对于父布局居中

     6.android:layout_centerVertical=true  相对于父布局垂直居中

     7.android:layout_centerHorizontal=true 相对于父布局水平居中

 

二、当参照物是兄弟控件

    8.android:layout_alignLeft=“@id/button” 参数是参照物视图的id 作用于 参照物视图左边对齐

    9.android:layout_alignRight=“@id/button” 参数是参照物视图的id 作用于 参照物视图右边对齐

   10.android:layout_alignTop=“@id/button” 参数是参照物视图的id 作用于 参照物视图上边对齐

   11.android:layout_alignButtom=“@id/button” 参数是参照物视图的id 作用于 参照物视图下边对齐

 

   12.android:layout_toLeftof=“@id/button”  在参照物视图的 左侧

   13.android:layout_toRightof=“@id/button”  在参照物视图的右侧

   14.android:layout_above=“@id/button” 在参照物视图的上侧

   15.android:layout_below=“@id/button”在参照物视图的下册

接下来运用两个例子来实现这几个功能:

第一个:

one:Android 视图与五大布局_第10张图片

 

two:Android 视图与五大布局_第11张图片

 

Android 视图与五大布局_第12张图片

three:Android 视图与五大布局_第13张图片

 

four:

Android 视图与五大布局_第14张图片

效果如上:

2.第二个:

one:

Android 视图与五大布局_第15张图片

two:

Android 视图与五大布局_第16张图片

three:

Android 视图与五大布局_第17张图片

效果如下:

Android 视图与五大布局_第18张图片

 

 

3.帧布局FrameLayout

叠加出来的

布局子视图可以叠加

每一个子视图都是一帧

位置放只能通视图android:layout_gravity方法来 

android速度最快的布局

效果如下:

Android 视图与五大布局_第19张图片

 

 

 

4.AbsolutLayout:

绝对布局:开发过程中绝对不推荐使用的布局 

过时的布局

子视图通过属性android:layout_x

           android:layout_y 来确定当前视图在屏幕上的位置

x,y就是坐标点 x轴的值和y轴的值

 

5.Tablelayout:

类似于行和列的形式对控件进行管理,每一行为一个TableRow对象,或一个View控件。         

当为TableRow对象时,可在TableRow下添加子控件,默认情况下,每个子控件占据一列。        

当为View时,该View将独占一行。

 

TableLayout行列数的确定:         

TableLayout的行数由开发人员直接指定,即有多少个TableRow对象(或View控件),就有多少行。
TableLayout的列数确定:

等于含有最多子控件的TableRow的列数。如第一TableRow含2个子控件,第二个TableRow含3个,第三个TableRow含4个,那么该TableLayout的列数为4.

 

 

三个列属性:

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

android:shrinkColumns    设置可收缩的列。当该列子控件的内容太多,已经挤满所在行,那么该子控件的内容将往列方向显示。

android:collapseColumns 设置要隐藏的列

 

比如:

android:stretchColumns="0"          第0列可伸展

android:shrinkColumns="1,2"        第1,2列皆可收缩

android:collapseColumns="*"        隐藏所有行

 

单元格属性,有以下2个参数:

android:layout_column   指定该单元格在第几列显示
android:layout_span       指定该单元格占据的列数(未指定时,为1)

 

例如:
android:layout_column="1"   该控件显示在第1列
android:layout_span="2"       该控件占据2列
说明:一个控件也可以同时具备这两个特性。

 

总结到此,如果对您有帮助的话,是我的幸运,谢谢!have a good time!

 

 

 

 

 

 

 

 

 

更多相关文章

  1. 应用布局说明
  2. Linear Layout 布局技巧
  3. Android布局优化----ViewStub、include、merge
  4. Android流行UI布局——底部导航(BottomNavigationView+ViewPager+
  5. 动态广告布局
  6. 设置android的布局文件的背景颜色为黑色
  7. 相对布局 relativelayout
  8. Android 约束布局(ConstraintLayout)1.1.0 版详解
  9. android studio 按百分比布局

随机推荐

  1. Android(安卓)游戏开发 SurfaceView框架
  2. android pdf
  3. Android(安卓)studio 的安装
  4. Android(安卓)实战之UI线程和Worker线程
  5. Android(安卓)Studio迁移到AndroidX详细
  6. Android(安卓)Dialog中的EditText无法弹
  7. Android(安卓)StrictMode严格模式
  8. Android(安卓)Widget:DrawerLayout配合Too
  9. Android官方新推的DI库 Hilt
  10. Android判断两次输入密码是否相等并且不