按下第一個按鈕出現第二個圖,按下第二個按鈕出現第三個圖,按下第三個按鈕出現最後一個圖。
第二個圖的代碼如下(activity_frame_layout.xml):
<?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:orientation="vertical"
android:background="#000000">
<ImageView
android:id="@+id/photo"
android:src="@drawable/bg"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>
第三個圖的代碼如下(activity_relative_layout.xml):
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000">
<TextView
android:id="@+id/input"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="@dimen/padding_medium"
android:text="@string/relativeinput"
tools:context=".RelativeLayoutActivity" />
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="text"
android:layout_below="@id/input"/>
<Button
android:id="@+id/yes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/name"
android:layout_marginRight="91dp"
android:layout_marginTop="15dp"
android:text="@string/yes" />
<Button
android:id="@+id/no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/yes"
android:layout_alignBottom="@+id/yes"
android:layout_alignParentRight="true"
android:layout_marginRight="18dp"
android:layout_marginTop="15dp"
android:text="@string/no" />
</RelativeLayout>
第四個圖代碼如下(activity_table_layout.xml):
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000"
android:stretchColumns="1">
<TableRow >
<TextView
android:gravity="right"
android:padding="3dip"
android:text="@string/name"
android:textStyle="bold"/>
<EditText
android:id="@+id/name"
android:padding="3dip"
android:scrollHorizontally="true"
android:inputType="text"/>
</TableRow>
<TableRow >
<TextView
android:gravity="right"
android:padding="3dip"
android:text="@string/password"
android:textStyle="bold"/>
<EditText
android:id="@+id/password"
android:padding="3dip"
android:inputType="number"
android:scrollHorizontally="true"/>
</TableRow>
<TableRow
android:gravity="right">
<Button
android:id="@+id/exit"
android:text="@string/no"/>
<Button
android:id="@+id/login"
android:text="@string/login"/>
</TableRow>
</TableLayout>
主要Activity中的代碼如下:
package com.bzu.layoutexcise.activity;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.view.View.OnClickListener;
public class LayoutActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_layout);
//第一個按鈕
Button first=(Button) this.findViewById(R.id.first);
//第二個按鈕
Button second=(Button) this.findViewById(R.id.second);
//第三個按鈕
Button third=(Button) this.findViewById(R.id.third);
/*
* 點擊第一個按鈕處理方法
*/
first.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(LayoutActivity.this, FrameLayoutActivity.class);
setTitle("非洲地圖");
startActivity(intent);
}
});
/*
* 點擊第二個按鈕處理方法
*/
second.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(LayoutActivity.this, RelativeLayoutActivity.class);
setTitle("演示RelativeLayout佈局");
startActivity(intent);
}
});
/*
* 點擊第三個按鈕處理方法
*/
third.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(LayoutActivity.this, TableLayoutActivity.class);
setTitle("TableLayout佈局");
startActivity(intent);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_layout, menu);
return true;
}
}
最後,strings.xml中的代碼如下:
<resources>
<string name="app_name">LayoutExcise</string>
<string name="first">非洲草原地圖:FrameLayout的使用</string>
<string name="second">個性化表單:RelativeLayout的使用</string>
<string name="third">整齊的表單:TableLayout的使用</string>
<string name="menu_settings">Settings</string>
<string name="title_activity_layout">程序主界面</string>
<string name="hello_world">Hello world!</string>
<string name="relativeinput">請輸入用戶名:</string>
<string name="yes">確定</string>
<string name="no">取消</string>
<string name="name">用戶名:</string>
<string name="password">密碼:</string>
<string name="login">登錄</string>
<string name="title_activity_frame_layout">非洲地圖</string>
<string name="title_activity_relative_layout">演示RelativeLayout佈局</string>
<string name="title_activity_table_layout">TableLayout佈局</string>
</resources>