android五大布局
? ? ? ??Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。
?
?
??
一、LinearLayout:
? 1.运行效果:
??
?
? ? ?2.源码:
?
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/lla" android:orientation="vertical" > <Button android:text="button1" android:id="@+id/button1" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:text="button2" android:id="@+id/button2" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:text="button3" android:id="@+id/button3" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
?
?
?
二、FrameLayout:
? ? ? ?1.运行效果:
? ? ? ?
?
? ? 2.源码:
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/white"> <TextView android:text="@string/big" android:id="@+id/TextView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="60px" android:textColor="@color/green" > </TextView> <TextView android:text="@string/middle" android:id="@+id/TextView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="40px" android:textColor="@color/red" > </TextView> <TextView android:text="@string/small" android:id="@+id/TextView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20px" android:textColor="@color/blue" > </TextView> </FrameLayout>
?
?
三、TableLayout:
? ? ? ?1.运行效果:
? ? ??
?
? ?2.源码:
<?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:orientation="vertical"> <TableRow android:id="@+id/tablerow1" android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView android:id="@+id/textView1" android:text="Test" /> <TextView android:id="@+id/textView2" android:text="Test2" android:layout_width="200dp " android:layout_gravity="center_horizontal" /> </TableRow> <TableRow android:id="@+id/tablerow2" android:layout_width="wrap_content" android:layout_height="wrap_content" > <ImageView android:id="@+id/tableImg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/a1" /> </TableRow> </TableLayout>
?
四、AbsoluteLayout:
? ? ? ?1.运行效果:
? ? ??
? ?2.源码:
<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="34dp" android:layout_y="50dp" android:text="用户名" /> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="86dp" android:layout_y="34dp" android:ems="10" /> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="93dp" android:layout_y="84dp" android:ems="10" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="38dp" android:layout_y="101dp" android:text="密码" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_x="92dp" android:layout_y="185dp" android:text="登录" /> </AbsoluteLayout>
?
?
五、Relative Layout:
? ? ? ?1.运行效果:
? ? ?
?
? ?2.源码:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/button11" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="居中" /> <Button android:id="@+id/button12" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/button11" android:layout_toRightOf="@+id/button11" android:text="右侧" /> <Button android:id="@+id/button13" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button11" android:layout_alignLeft="@+id/button11" android:text="上方" /> </RelativeLayout>
?
六、总结:
LinearLayout:它包含的子控件将以横向或竖向的方式排列,一般也比较常用.
Relative Layout:在相对布局中,子控件的位置是相对于兄弟控件或是父容器而决定的.
AbsoluteLayout:屏幕中所有控件通过设置控件的坐标来指定,控件容器不在负责管理其子控件的位置:
FrameLayout:
?1.在屏幕上开辟一块区域出来,在这个区域可以加很多子控件,但是所有的子控件都被对齐到屏幕的左上角,
?2.帧布局的大小由子控件中尺寸最大的那个控件来决定,如果控件同样大小,那么同一时刻只能看到最上面的子控件
TableLayout:
以行和列的形式管理控件,每行为一个TableRow对象,也可以是一个view对象,当是view对象时,该View对象将跨越该行的所有列,在tableRow中可以添加子控件,每添加一个子控件为一列.
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。