Android初级开发第六讲--Activity的布局
大家好,Android的界面主要靠布局文件完成,只有掌握了其中的属性与应用技艺,才能易做图的完成任务,
所以今天我们来讲讲Android的布局。
自从htc1.0开始发布,安卓中有五大布局文件,分别是:
LinearLayout 线性布局
RelativeLayout 相对布局
TableLayout 表格布局
FrameLayout 框架布局
AbsoluteLayout 绝对布局
首先布局文件都有两个最基本的属性,宽和高 :
android:layout_width="fill_parent" android:layout_height="fill_parent"
fill_parent代表充满整个屏幕,wrap_content代表适应整个屏幕,主要是适应自己控件的大小,
从2.2开始加入match_parent这个属性,也代表适应整个屏幕,但这个不仅适应自己控件大小,也会把屏幕中的空白也占一部分,使屏幕看起来没那么空旷,是个比较好用的属性。但考虑到适配机型,开发者不太熟悉,但提倡用。
——————————————————————————————————————————————-
下面是布局的详细介绍:
线性布局:最普通的布局,默认子元素从左到右排列,有horizontal水平和vertical竖直排列这两种属性,一定要注意默认是水平排列。
相对布局:最好用、最常用的布局,可以使用其中的layout_alignParent和layout_toLeftOf、layout_above,再配上padding和margin等属性(上一讲有介绍),可以为所欲为的在屏幕中放控件。
表格布局:主要在排版用户名、密码、爱好等这样的格子时被使用,加入tableRow可以布局中jsp各种样式的表格。
框架布局和绝对布局:前者最常用到的就是用在tabhost里,以下是标准选项卡布局下的部分代码
[html]
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/backgrounds"
android:orientation="vertical" >
<LinearLayout>
<FrameLayout android:id="@android:id/tabcontent"/>
<TabWidget android:id="@android:id/tabs"/>
</LinearLayout>
</TabHost>
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/backgrounds"
android:orientation="vertical" >
<LinearLayout>
<FrameLayout android:id="@android:id/tabcontent"/>
<TabWidget android:id="@android:id/tabs"/>
</LinearLayout>
</TabHost>但在另外一个场合,它也是必用布局,那就是叠加效果。
绝对布局主要是通过layout_x,layout_y来把所有的控件定在屏幕绝对的位置,但由于其固执,难以改变,所以它在1.5以后被弃用,开发者用FrameLayout中的scrollX,scrollY来定义部分控件在布局中的绝对位置,可以说从而代替了绝对布局的功能。
还有其中一些布局如GridLayout进行图文混排,ScrollView,用来加载大图片,HorizonalScrollView用来加载水平方向大的图片等简单的布局。
今天布局先讲到这儿,接下来继续讲述其他知识,其中的特性在其他章节我们会一会解释,谢谢大家!
补充:移动开发 , Android ,