Android布局管理器

来源:互联网 发布:华彩人生一点通 mac 编辑:程序博客网 时间:2024/05/29 03:14

Android布局管理器()

1、TableLayout(采用表格的形式对控件的布局进行管理)。

2、FramLayout(框架布局管理器)。

3、LinearLayout(线性布局管理器)。

一、对相关布局管理器的解释

1、TableLayout(表格布局)。

<TableLayout     xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="${relativePackage}.${activityClass}" ><TableRow>//表中的一行    <EditText      //文本编辑框        android:id="@+id/edit" //设置ID        android:layout_width="wrap_content" //宽度为文字宽度        android:layout_height="wrap_content"//高度为文字高度        android:text="@string/hello_world" />//引用string.xml文件中的文字信息    <Button  //设置的按钮        android:id="@+id/button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"android:text="@string/txt1"        /></TableRow><View     android:layout_height="2px"    android:background="#F75000"    /><View     android:layout_height="2px"    android:background="#F75000"    /><TableRow >    <TextView        android:id="@+id/text1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:textSize="45px"//设置文字大小        android:text="@string/txt2"        />    <RadioGroup //单选钮        android:id="@+id/text2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="horizontal"        android:checkedButton="@+id/RBut1"//设置默认选中项        >        <RadioButton  //单选项            android:id="@+id/RBut1"            android:text="@string/txt3"            />        <RadioButton //单选项           android:id="@+id/RBut2"           android:text="@string/txt4"            />       </RadioGroup> </TableRow></TableLayout> 
<TableLayout     xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:shrinkColumns="3"//设置第三列为可伸缩列也就是说当文字过长时会对文字进行换行    android:collapseColumns="0,3"//设置第1列与第四列隐藏    android:background="@drawable/dd"//设置背景图片    tools:context="${relativePackage}.${activityClass}"         ><TableRow>     <span style="white-space:pre"></span>//第一行<TextView <span style="white-space:pre"></span><pre name="code" class="java">  android:layout_column = "1"<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"></span>//<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">表示列标,不可改变</span>
android:text="@string/txt1"  android:gravity="center_horizontal"//定义控件水平居中  android:padding="10px"      />    <TextView        android:layout_column = "1"// 表示列标,不可改变 android:text="@string/txt2"  android:gravity="center_horizontal" android:padding="10px" /> <TextView   android:layout_column = "2" 表示列标,不可改变 android:text="@string/txt3" android:gravity="center_horizontal" android:padding="10px" <TextView  android:layout_column = "3"// 表示列标,不可改变 android:text="@string/txt4" android:gravity="center_horizontal" android:padding="10px" </TableRow> <View   android:layout_height="3px" android:background="#AE0000" /> <TableRow> <TextView  android:layout_column = "0" android:text="@string/txt5" android:gravity="center_horizontal" android:padding="10px" /> <TextView  android:layout_column = "1" android:text="@string/txt6" android:gravity="center_horizontal" android:padding="10px" /> <TextView  android:layout_column = "2" android:text="@string/txt7" android:gravity="center_horizontal" android:padding="10px" /> <TextView  android:layout_column = "3" android:text="@string/txt8" android:gravity="center_horizontal" android:padding="10px" /> </TableRow></TableLayout>

注:做软件开发最常用的就是表格布局以及线性布局。

2、相对布局(RelativeLayout)

相对布局的意思就是相对一个参考点就是某一个控件进行操作。

<span style="font-family:Microsoft YaHei;"><RelativeLayout   //    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="${relativePackage}.${activityClass}" >    <ImageView  //图片控件        android:id="@+id/image1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@drawable/aa"//取得照片        />    <ImageView         android:id="@+id/image2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@drawable/dd"        android:layout_toRightOf="@+id/image1"//image2相对于image1,在image1的右边        />    <ImageView         android:id="@+id/image3"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@drawable/tt"        android:layout_toRightOf="@+id/image1"//image3相对于image1在其右边        android:layout_below="@+id/image2"//image3相对于image2在其下边        /> </RelativeLayout></span>

3、FrameLayout(框架布局管理器)

这种布局管理器的效果是所有添加的组件会叠加在一起。

4、多种布局的嵌套

 <LinearLayout<span style="white-space:pre"> //总体上是线性布局    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"                                //垂直排列    tools:context="${relativePackage}.${activityClass}" ><RelativeLayout                                          //嵌套相对布局管理器    android:layout_width="fill_parent"    android:layout_height="wrap_content" //这里一定要写成这种形式,这是为了防止当前布局管理器占据全屏的高度,使后边所定义的布局管理器无法正常显示     android:orientation="vertical"     >    <ImageView         android:id="@+id/image1"        android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:src="@drawable/aa"        />      <ImageView         android:id="@+id/image2"        android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:src="@drawable/tt"    android:layout_toRightOf="@+id/image1"        />       <ImageView         android:id="@+id/image3"        android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:src="@drawable/dd"    android:layout_below="@+id/image2"    android:layout_toRightOf="@+id/image1"        />    </RelativeLayout>        <TableLayout  //嵌套表格布局管理器        android:orientation="horizontal"//排列方式为水平        android:layout_width="wrap_content"                android:layout_height="wrap_content"         >       <TableRow>        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:textSize="45px"            android:text="@string/text1"            />        <RadioGroup            android:id="@+id/radio1"             android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:orientation="vertical"            android:checkedButton="@+id/Rbut1"            >            <RadioButton                android:id="@+id/Rbut1"               android:layout_width="wrap_content"               android:layout_height="wrap_content"               android:text="@string/text2"                />            <RadioButton                android:id="@+id/Rbut2"       android:layout_width="wrap_content"               android:layout_height="wrap_content"               android:text="@string/text3"                />        </RadioGroup>        </TableRow>        <View             android:layout_height="3px"            android:background="#FF0000"            />    </TableLayout></LinearLayout> 






0 0