Android开发笔记二

Android五大布局


1、线性布局(LinearLayout):按照垂直或者水平方向布局的组件。

2、相对布局(RelativeLayout):相对其它组件的布局方式。

3、帧布局(FrameLayout):组件从屏幕左上方布局组件。

4、表格布局(TableLayout):按照行列方式布局组件。

5、绝对布局(AbsoluteLayout):按照绝对坐标来布局组件。


在android开发中一般用的比较多的是线性布局和相对布局,所以下面只介绍这两个布局:

1、线性布局:

       线性布局是最常见的一种布局方式,一般按照水平或者垂直的方向来布局,通过“android:orientation”属性可以设置线性布局的方向。属性值有垂直(vertical)和水平(horizontal)两种。

      典型的特性:

      android:orientation:可以设置布局的方向

      android:gravity:用来控制组件的对齐方式

       layout_weight:控制各个组件在布局中的相对大小

       layout_weight属性以控制各个控件在布局中的相对大小。layout_weight属性是一个非负整数值。

      线性布局会根据该控件layout_weight值与其所处布局中所有控件layout_weight值之和的比值为该控件分配占用的区域。例如,在水平布局的LinearLayout中有两个Button,这两个Button的layout_weight属性值都为1,那么这两个按钮都会被拉伸到整个屏幕宽度的一半。如果layout_weight指为0,控件会按原大小显示,不会被拉伸;对于其余layout_weight属性值大于0的控件,系统将会减去layout_weight属性值为0的控件的宽度或者高度,再用剩余的宽度或高度按相应的比例来分配每一个控件显示的宽度或高度。

2、相对布局:

      相对布局是按照子元素之间的位置关系完成布局的,作为Android系统五大布局中最灵活也是最常用的一种布局方式,非常适合于一些比较复杂的界面设计。

注意:在引用其他子元素之前,引用的id必须已经存在,否则将出现异常。

         android:layout_toLeftOf                    该组件位于引用组件的左方

         android:layout_toRightOf                  该组件位于引用组件的右方

         android:layout_above                        该组件位于引用组件的上方

         android:layout_below                        该组件位于引用组件的下方

         android:layout_alignParentLeft          该组件是否对齐父组件的左端

         android:layout_alignParentRight       该组件是否齐其父组件的右端

         android:layout_alignParentTop         该组件是否对齐父组件的顶部

         android:layout_alignParentBottom    该组件是否对齐父组件的底部

         android:layout_centerInParent          该组件是否相对于父组件居中

         android:layout_centerHorizontal       该组件是否横向居中

         android:layout_centerVertical           该组件是否垂直居中


layout_margin和layout_padding


(1)layout_margin

用于设置控件边缘相对于父控件的边距

android:layout_marginLeft

android:layout_marginRight

android:layout_marginTop

android:layout_marginBottom

(2) layout_padding

用于设置控件内容相对于控件边缘的边距

android:layout_paddingLeft

android:layout_paddingRight

android:layout_paddingTop

android:layout_paddingBottom


android:gravity和android:layout_gravity


(1)gravity

用于设置View组件里面内容的对齐方式  top bottom left  right  center等 。

android:gravity 用于设置组件本身里面内容或者子控件的对齐方式,比如Button里面的文字,如果

android:gravity="left",那么文字文字就会靠左显示。

 (2)android:layout_gravity

android:layout_gravity 用于设置组件在layout容器中对齐方式

比如设置Button android:layout_gravity="right",则button会在layout容器右边显示。

附加:

重新引用布局文件。

你可能感兴趣的:(Android开发笔记二)