码迷,mamicode.com
首页 > 移动开发 > 详细

Android【布局管理器语法】之四大布局【LinearLayout,TableLayout,FrameLayout,RelativeLayout】

时间:2015-08-08 12:13:11      阅读:488      评论:0      收藏:0      [点我收藏+]

标签:android   布局   界面设计   ui   

LinearLayout

线性布局是将放入其中的组件按照垂直(vertical)或者水平(horizontal)方向来布局,

也就是控制其中组件横向排列或者纵向排列。在线性布局中

每一行【针对垂直排列】或每一列【针对水平排列】只能放一个组件

注意:Android线性布局不会换行,当组件一个挨着一个排列到窗体边缘后

剩下的组件将不会显示出来


排列方式由android:orientation属性控制,对齐方式由android:gravity属性来控制

(1)常见属性:

android:orientation,    android:gravity,    

layout_width,     layout_height,

androud:id,android:background


其中前两个是线性布局管理器支持的属性,

后四个是android.view.View和android.view.ViewGroup支持的属性

android:orientation属性

用于设置布局管理器内组件的排列方式,其可选值有horizontal(水平), vertical 【默认】(垂直)


android:gravity属性

用于设置布局管理器内的组件对齐方式,其可选值:top, bottom,left,right,center_vertical,fill_vertical,center_horizontal,fill_horizontal,center,fill,clip_vertical,clip_horizontal

这些值可以同时设定中间用|隔开 。例如:要指定组件靠右下角对齐,可以使用reight|bottom


android:layout_weight是ViewGroup.LayoutParams支持的XML属性

属性用于设置该组件的基本宽度,其可选值有fill_parent,match_parent,wrap_content,其中match_parent(从Android2.2开始推荐使用)和_parent的作用完全相同【表示该组件的宽度和父亲、容器宽度相同】

wrep_content表示该组件宽度恰好能包裹他的内容。

android:layout_height

android:layout_weight类似



TableLayout

表格布局与常见表格类似,它以行,列的形式来管理放入其中的UI组件。表格布局使用<TableLayout></TableLayout>标记定义,

在表格中,可以添加多个<TableRow>标记,每个<TableRow>标记占用一行,由于<TableRow>标记也是容器,所以该标记中还可以添加

其他组件,在<TableRow>标记中,每添加一个组件,表格就会增加一列。

在表格布局中,通过设置可以对列进行隐藏或延伸操作。

从而填充可利用的屏幕空间,也可以设置强制收缩,直到表格匹配屏幕大小。


TableLayout

继承了LinearLayout,因此它支持LinearLayout所支持的全部XML属性,此外TableLayout还有一些特殊属性:

 android:stretchColumns设置需要隐藏的列的序列号(序列从0开始),多个列序号之间用逗号隔开

android:shrinkColumns设置允许被收缩的列序号(序列从0开始),多个列序号之间用逗号隔开

android:stretchColumns设置允许被拉伸的列序号(序列从0开始),多个列序号之间用逗号隔开


<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tablelayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/loginbg"
    android:gravity="center_vertical"
    android:stretchColumns="0,3" >

    <!-- 第一行 -->

    <TableRow
        android:id="@+id/tablerow1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView />

        <TextView
            android:id="@+id/textview1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="用户名:" />

        <EditText
            android:id="@+id/edittext1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:minWidth="200px"
            android:textSize="24px" />

        <TextView />
    </TableRow>
    <!-- 第二行 -->

    <TableRow
        android:id="@+id/tablerow2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView />

        <TextView
            android:id="@+id/textview2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="密码"
            android:textSize="24px" />

        <EditText
            android:id="@+id/edittext2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:inputType="textPassword"
            android:minWidth="200px"
            android:textSize="24px" />

        <TextView />
    </TableRow>

    <TableRow
        android:id="@+id/tablerow2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView />

        <TextView />

        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="登录"
            android:textSize="24px" />

        <TextView />
    </TableRow>

</TableLayout>




版权声明:本文为博主原创文章,未经博主允许不得转载。

Android【布局管理器语法】之四大布局【LinearLayout,TableLayout,FrameLayout,RelativeLayout】

标签:android   布局   界面设计   ui   

原文地址:http://blog.csdn.net/wei_chong_chong/article/details/47355027

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!