android中常见的四种布局

常见的布局有四种:


        LinearLayout        线性布局        子元素任意
        TableLayout        表格布局        子元素为<TableRow>,其中可放各种控件
        RelativeLayout        相对布局        子元素任意
        AbsoluteLayout      绝对布局      子元素任意

公共控件属性:


        Android:id = "@+id/XXX"      程序中通过ID来关联控件

        android:layout_width/android:layout_height      控制控件的宽度/高度,可选"wrap_content"/"fill_parent"/"match_parent"/具体像素

        android:layout_marginLeft/Right/Top/Bottom = “5dip”      各边距离其他控件的距离

        android:gravity      控件中内容的显示位置

        android:textSize      空间中文本大小

        android:textColor = "#ff123456"      空间中文本颜色,以#开头,前两位为透明值,后六位为颜色值

        android:textStyle = "normal"/"bold"/"italic"       控件文本风格,也可用“|”将属性组合起来

        android:text      控件文本内容

        android:background = "@drawable/window_bg"      控件背景

        android:src = "@drawable/window_bg"      控件图片,用于ImageButton,ImageView等需要图片的控件

        android:visibility      控件可见性,"visible"表可见,"invisible"表不可见,但在布局中占用的位置还在,"gone"表不可见,完全从布局中消失

        android:padding      空间中内容与控件边框的距离

        android:weight        指定画完控件后剩余空间的分配所占比例

        android:ems/maxEms/minEms        控制控件宽度

LinearLayout特有属性
       
        android:orientation      布局中子控件排布方向

TableLayout特有属性

        android:stretchColums      指定当一个TableRow中的控件不够填充满整个宽度时,将会被拉伸的条目

RelativeLayout特有属性

        android:layout_alignParentLeft/Right/Top/Bottom = "true"      控件在布局中的相对位置(与父控件对齐)

        android:orientation      布局中子控件排布方向

        android:layout_toRightOf/toLeftOf/below/above = "@id/buttonOne"      控件和某个控件的位置关系,其中在左边/右边包含但不仅限于紧靠,在上方/下方包含但不仅限于正上方/正下方

        android:layout_alignTop/Bottom/Left/Right/Baseline = "@id/buttonOne"      控件与其他控件对齐

        android:layout_centerHorizontal/Virtical/InParent     指定控件位于水平/垂直/父控件的中间位置

AbsoluteLayout特有属性

        android:layout_X/Y     控件的X,Y坐标

辨析与技巧
       
        单个控件的风格设置通过在布局文件的控件中添加style属性,整个Activity或者App的主题设置通过在menifest文件中的Theme设置

        android:gravity设置空间中内容的对齐方式,android:layout_gravity设置控件本身的对齐方式

        当android:gravity和android:padding同时做用时,先按gravity进行排布,再按padding调整

        android:padding指定内边距,android:layout_margin指定外边距
posted on 2017-03-28 11:25  zjone391  阅读(238)  评论(0编辑  收藏  举报