0
简单的Android线性视图实例
LinearLayout(线性视图)是一个ViewGroup(视图组),负责显示纵向或横向的子视图。在你使用线性视图的时候,如果你嵌套多个线性视图,我们建议你使用relativelayout(相对视图), 这个可以提高应用程序显示视图的速度。
- 创建一个新的项目名为HelloLinearLayout。
- 打开 res/layout/main.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="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1"> <TextView android:text="row one" android:textSize="15pt" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"/> <TextView android:text="row two" android:textSize="15pt" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"/> <TextView android:text="row three" android:textSize="15pt" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"/> <TextView android:text="row four" android:textSize="15pt" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"/> </LinearLayout> </LinearLayout>
如果你仔细查看这段代码,你会发现整个视图被包含在一个根视图里,这个根视图的 android:orientation=”vertical” 被定义为纵向显示,所以它的两个子视图是上下显示。对于两个子视图,它们各包含有4个文本视图。第一子视图的显示方向被定义为android:orientation=”horizontal“ 横向,所以第一个4个子文本视图是横向显示。然而第二个子视图的显示方向被定义为android:orientation=”vertical“ 纵向向,所以第二个4个子文本视图是纵向向显示。
3. 现在打开 HelloLinearLayout.java 然后确认在onCreated()方法里有载入 res/layout/main.xml布局,代码如下:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
该setContentView(int)方法加载该活动的布局文件,由指定的资源ID – R.layout.main来寻找其地址 res/layout/main.xml。
请注意XML属性将如何定义每个视图的行为。 尝试不同的 layout_weight 值或其他属性值,看看屏幕上是怎么分布各个组件的。
