android应用开发笔记---Activity布局
2012-11-11 19:02
183 查看
主要是LinearLayout和TableLayout,还有相对布局
先看一下LinearLayout,主要 是它的xml文件
layout_weight表示它在整个layout中占的比重,把第一个TextView的layout_weight也设置为1
singleLine控件中的内容一行中显示为true的话:
如果不是在一行中显示singleLine改为false
再来看下TableLayout
stretchColumns表示当控件无法填满整行时拉升第几列,如stretchColumns = 2
注意2表示上面的第3列,下标是从0开始
再来看一个复杂点的布局:效果如下
相应xml
再看一下相对布局,先看下结果
相应的布局文件
先看一下LinearLayout,主要 是它的xml文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <!-- android:id —— 为控件指定相应的ID android:text —— 指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串 android:grivity —— 指定控件的基本位置,比如说居中,居右等位置 android:textSize —— 指定控件当中字体的大小 android:background —— 指定该控件所使用的背景色,RGB命名法 android:width —— 指定控件的宽度 android:height —— 指定控件的高度 android:padding* —— 指定控件的内边距,也就是说控件当中的内容 android:sigleLine —— 如果设置为真的话,则将控件的内容在同一行当中进行显示 --> <TextView android:id="@+id/firstText" android:text="第一行" android:gravity="center_vertical" android:textSize="15pt" android:background="#aa0000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="10000" android:singleLine="true"/> <TextView android:id="@+id/secondText" android:text="第二行" android:gravity="center_vertical" android:textSize="15pt" android:background="#0000aa" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"/> </LinearLayout>
layout_weight表示它在整个layout中占的比重,把第一个TextView的layout_weight也设置为1
singleLine控件中的内容一行中显示为true的话:
如果不是在一行中显示singleLine改为false
再来看下TableLayout
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:stretchColumns="0"> <TableRow> <TextView android:text="@string/row1_column1" android:background="#aa0000" android:padding="3dip" /> <TextView android:text="@string/row1_column1" android:padding="3dip" android:gravity="center_horizontal" android:background="#00aa00" ></TextView> <TextView android:text="@string/row1_column2" android:gravity="right" android:background="#0000aa" android:padding="3dip" /> </TableRow> <TableRow> <TextView android:text="@string/row2_column1" android:padding="3dip" /> <TextView android:text="@string/row2_column2" android:gravity="right" android:padding="3dip" /> </TableRow> </TableLayout>
stretchColumns表示当控件无法填满整行时拉升第几列,如stretchColumns = 2
注意2表示上面的第3列,下标是从0开始
再来看一个复杂点的布局:效果如下
相应xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1"> <TextView android:text="red" android:gravity="center_horizontal" android:background="#aa0000" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" /> <TextView android:text="green" android:gravity="center_horizontal" android:background="#00aa00" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" /> <TextView android:text="blue" android:gravity="center_horizontal" android:background="#0000aa" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" /> <TextView android:text="yellow" android:gravity="center_horizontal" android:background="#aaaa00" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1"> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:stretchColumns="0"> <TableRow> <TextView android:text="@string/row1_column1" android:padding="3dip" /> <TextView android:text="@string/row1_column1" android:padding="3dip" android:gravity="center_horizontal"> </TextView> <TextView android:text="@string/row1_column2" android:gravity="right" android:padding="3dip" /> </TableRow> <TableRow> <TextView android:text="@string/row2_column1" android:padding="3dip" /> <TextView android:text="@string/row2_column2" android:gravity="right" android:padding="3dip" /> </TableRow> </TableLayout> </LinearLayout> </LinearLayout>
再看一下相对布局,先看下结果
相应的布局文件
<?xml version="1.0" encoding="utf-8"?> <!-- android:layout_above 将该控件的底部至于给定ID的控件之上 android:layout_below 将该控件的顶部至于给定ID的控件之下 android:layout_toLeftOf 将该控件的右边缘和给定ID的控件的左边缘对齐 android:layout_toRightOf 将该控件的左边缘和给定ID的控件的右边缘对齐 android:layout_alignBaseline 该控件的baseline和给定ID的控件的baseline对齐 android:layout_alignBottom 将该控件的底部边缘与给定ID控件的底部边缘 android:layout_alignLeft 将该控件的左边缘与给定ID控件的左边缘对齐 android:layout_alignRight 将该控件的右边缘与给定ID控件的右边缘对齐 android:layout_alignTop 将给定控件的顶部边缘与给定ID控件的顶部对齐 android:alignParentBottom 如果该值为true,则将该控件的底部和父控件的底部对齐 android:layout_alignParentLeft 如果该值为true,则将该控件的左边与父控件的左边对齐 android:layout_alignParentRight 如果该值为true,则将该控件的右边与父控件的右边对齐 android:layout_alignParentTop 如果该值为true,则将空间的顶部与父控件的顶部对齐 android:layout_centerHorizontal 如果值为真,该控件将被至于水平方向的中央 android:layout_centerInParent 如果值为真,该控件将被至于父控件水平方向和垂直方向的中央 android:layout_centerVertical 如果值为真,该控件将被至于垂直方向的中央 --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="10px" > <TextView android:id="@+id/label" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Type here:" /> <EditText android:id="@+id/entry" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@android:drawable/editbox_background" android:layout_below="@id/label" /> <Button android:id="@+id/ok" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/entry" android:layout_alignParentRight="true" android:layout_marginLeft="10px" android:text="OK" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toLeftOf="@id/ok" android:layout_alignTop="@id/ok" android:text="Cancel" /> </RelativeLayout>
相关文章推荐
- Android开发学习笔记(10):NDK安装手顺及应用
- Android高级应用开发(基础篇) - stage6 - 学习笔记(下)
- android应用开发笔记---Activity生命周期二
- Android应用开发笔记——打造自己的标签栏
- Android应用开发学习笔记之AlertDialog对话框
- Android 应用开发笔记 - UI开发详解
- android应用开发学习笔记-BroadcastReceiver
- android应用开发笔记---SQLite使用
- Android应用开发学习笔记之Intent
- Android应用开发学习笔记之开发自定义UI组件
- Android 应用开发笔记 - 快显信息(Toast)
- Android应用开发学习笔记05--使用基本的UI控件
- Android 应用开发笔记 - 下拉列表(Spinner)
- android 应用开发:android studio使用笔记
- android应用开发揭秘examples_04-08笔记(CheckBox的使用)
- Android应用开发学习笔记之ContentProvider
- Android应用开发笔记(12):Android应用的自动升级、更新模块的实现
- android应用开发笔记---常用控件使用方法
- Android开发学习笔记(二)我的第一个Android应用
- Android应用开发笔记(13): Android移动应用界面的模板化设计