2018-03-10

2018-03-11  本文已影响0人  安多人

Android Studio的布局管理

Android Studio的布局分为六类,分别为1、LinearLayout 线性布局 2、RelativeLayout 相对布局 3、GridLayout 网格布局(是线性布局的子类) 4、TableLayout 表格布局5、FrameLayout 帧布局6、AbsoluteLayout 绝对布局(过时了),今天主要学习LinearLayout和RelativeLayout。先看LinearLayout的属性

a、gravity和layout_gravity android:gravity用于设置该控件中内容相对于该控件的对齐方式,android:layout_gravity 用于设置该控件想对于父控件的对齐方式。他们可以使用多种属性,当有多个属性时,使用|连接。属性值有top 将对象放在其容器的顶部,不改变大小;bottom将对象放在其容器的底部,不改变大小;left将对象放在其容器的左侧,不改变大小;right将对象放在其容器的右侧,不改变大小;center_vertical将对象纵向居中,不改变其大小。垂直方向上居中对齐;fill_vertical必要的时候增加对象的纵向大小,以完全充满其容器,垂直方向填充;center_horizontal,将对象横向居中,不改变其大小,水平方向居中对齐;fill_horizontal,必要时增加对象的横向大小,以完全充满其容器,水平方向填充;center将对象横纵居中,不改变其大小;fill 必要时增加对象的横纵向大小,以完全充满其容器;clip_vertical,附加选项,用于按照容器的边来剪切对象的顶部或底部的内容,剪切基于其纵向对齐设置:顶部对齐时,剪切底部;底部对齐时剪切顶部;除此之外剪切顶部和底部。垂直方向裁剪;clip_horizontal 附加选项,用于按照容器的边来剪切对象的左侧或右侧的内容,剪切基于其横向对齐设置:左侧对齐时,剪切右侧;右侧对齐时剪切左侧;除此之外左侧和右侧。水平方向裁剪;

b、padding和margin内边距和外边距,padding用于设置控件中内容相对于该控件的边距,即内边距。layout_margin用来设置该控件相对于其他控件的边距,及外边距。

c、layout_weight权重,用于在线性布局中指定父控件剩余空间的分配比例。水平方向的线性布局中:使用weight时,宽度一定设置为0dp,垂直方向的线性布局中,使用weight时,一定要将高度设置为0dp。总结:线性布局主要设置4方面的内容1、oration设置排列方式 2、gravity和layout_gravity 分别设置组件内容;的排列方式和组件间的排列方式 3、padding和margin分别设置内边距(组件中的内容)和外边距(组件间的距离或和容器间的距离)4、weight 权重,注意当水平排列时水平宽度一定要设置为0,当垂直排列时竖直高度也一定要设置为0.

RelativeLayout相对布局

相对布局就是一某个兄弟组件或者父容器来决定的。兄弟组件是在同一个布局中的组件,如果是布局里一个组件参照另一个布局里的组件会出错。合理地利用LinearLayout的权重属性和RelativeLayout相对布局,可以解决屏幕分辨率不同的自适应问题。

gravity和ignoreGravity  android:gravity设置容器内各个子组件的对齐方式。android:ignoreGravity:如果为哪个组件设置了这个属性的话,那么该组件就不受gravity属性的影响。android:gravity = "center" android:ignoreGravity = "id" 这个id的控件就不受gravity的控制了。还有可以根据父容器来定位,想位于哪,哪个属性就设置为true。有左对齐 android:layout_alighParentLeft 右对齐 android:layout_alighParentRight顶端对齐 android:layout_alighParenttop 底部对齐 android:layout_alighParentBottom 水平居中 android:layout_centerHorizon 垂直居中 android:layout_centerVertical 中央位置 android:layout_centerInParent

RelativeLayout用到的一些重要属性:

第一类:属性值为true或false  1、android:layout_centerHorizontal 2、android:layout_centerVertical 3、android:layout_centerParent 4、android:layout_alignParentBottom5、android:layout_alignParentLeft 6、android:layout_alignParentRight 7、android:layout_alignParentTop    8、android:layout_alignWithParentifMissing如果对应的兄弟元素找不到的话就以父元素做参照物

第二类 属性值必须为id的引用名“@/id_name” 1、android:layout_below 在某元素的下方2、android:layout_above3、android:layout_toleftof4、android:layout_toRightOf5、android:layout_alignTop本元素的上边缘和某元素的上边缘对齐6、android:layout_alignLeft本元素的左边缘和某元素的左边缘对齐 7、android:layout_alignBottom本元素的下边缘和某元素的下边缘对齐8、android:layout_alignRight本元素的右边缘和某元素的右边缘对齐

3、属性值为具体的像素值 1、 android:layout_marginBottom 离某元素底边缘的距离2、android:layout_marginLeft3、android:layout_marginRight4、android:layout_marginTop

上一篇下一篇

猜你喜欢

热点阅读