分类目录

展开|收起

看你喜欢

(1) (1) (42) (1) (1) (1) (16) (2) (1) (1) (4) (1) (2) (7) (4) (1) (1) (1) (1) (3) (1) (5) (1) (1) (1) (1) (1) (2) (1) (4) (4) (3) (1) (1) (2) (1) (37) (2) (1) (5) (3) (1) (4) (1) (1) (11) (3) (1) (9) (3) (1) (23) (2) (1) (2) (1) (1) (1) (1)

最新精华

《Android应用开发详解》- Chapter05_Activity_StartActivity – 启动另一个Activity

如同在WEB应用中,经常会从一个页面跳到另一个页面,Android程序中也经常从一个Activity跳转到另一个Activity,呈现不同的界面给用户。这就涉及到从一个Activity中启动另一个Activity,可以使用startActivity方法或startActivityForResult()方法(可以返回处理结果)。这两个方法中要传递的参数是Android程序中另外一个非常重要的组件Intent,Intent是同一组件内或不同组件间的信使,有关Intent请参见后续第6章的实例介绍。

本例演示采用startActivity方法来启动另一个Activity。

1. 布局文件first.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"
    >
    
	<Button android:id="@+id/Button01" 
	android:layout_width="wrap_content" 
	android:layout_height="wrap_content" 
	android:text="Second Activity"></Button>
	
</LinearLayout>

2. 布局文件second.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">

	<Button android:id="@+id/Button02" 
			android:layout_width="wrap_content"
			android:layout_height="wrap_content" 
			android:text="返回"></Button>
</LinearLayout>

3. FirstActivity.java

package com.amaker.test;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class FirstActivity extends Activity {
    /** Called when the activity is first created. */
	private Button b1;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.first);
        b1 = (Button) findViewById(R.id.Button01);
        // 响应按键事件
        b1.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				// 显示方式声明Intent,直接启动SecondActivity
		        Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
		        startActivity(intent);
			}
		});
    }
}

4. SecondActivity.java

package com.amaker.test;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class SecondActivity extends Activity {
    /** Called when the activity is first created. */
	private Button b2;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second);
        
        b2 = (Button) findViewById(R.id.Button02);
        // 响应按键事件
        b2.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				// 显示方式声明Intent,直接启动FirstActivity(返回前一个Activity)
		        Intent intent = new Intent(SecondActivity.this,FirstActivity.class);
		        startActivity(intent);
			}
		});
    }
}

5. 运行结果

Chapter05_Activity_StartActivity-1

点击“SecondActivity”按钮后启动第二个Activity:

Chapter05_Activity_StartActivity-2

Chapter05_Activity_StartActivity实例源码:

Chapter05_Activity_StartActivity
标题: Chapter05_Activity_StartActivity (459 次点击)
文件: Chapter05_Activity_StartActivity.7z
大小: 14 kB
描述:

  打分:5.0/5 (共2人投票)
(浏览总计: 63 次)
Add Comment Register



发表回复

  

  

  

您可以使用这些HTML标签

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>