布局最终是用户看到的界面,Android的应用采用了典型的MVC结构,而布局就是MVC中的View,这种View通过单独的xml文件配置,与代码分开,当然也可以通过代码来设置布局;在Android4.0之后有六大布局,分别为:LinearLayout、RelativeLayout、FrameLayout、AbsoluteLayout、TableLayout、GridLayout,其中GridLayout为4.0之后才增加的。
一、LinearLayout线性布局可以分为水平线性和垂直线性布局,这个布局是最简单也是最常用的布局之一;布局之间可以嵌套,当然嵌套不能过深,否则会影响性能
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linear_text1"
android:textColor="#ffff0000"
android:textSize="20sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:contentDescription="@string/image"
android:src="@drawable/snow" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#ff000000"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linear_text2"
android:textColor="#ff00ff00"
android:textSize="30sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:contentDescription="@string/image"
android:src="@drawable/snow" />
</LinearLayout>
</LinearLayout>
得到的效果是: