android程序一般不会只有一个activity,会碰到activity之间的跳转。以下是使用Intent做应用程序内部的activity做跳转。比如,应用程序第一个activity是:
点击“下一步”按钮后:
这需要写两个Activity类。第一个是:MainActivity
1 package com.easymorse; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.view.View; 7 import android.view.View.OnClickListener; 8 import android.widget.Button; 9 10 public class MainActivity extends Activity {11 12 private Button button;13 14 /** Called when the activity is first created. */15 @Override16 public void onCreate(Bundle savedInstanceState) {17 super.onCreate(savedInstanceState);18 setContentView(R.layout.main);19 20 this.button = (Button) this.findViewById(R.id.Button01);21 this.button.setOnClickListener(new OnClickListener() {22 @Override23 public void onClick(View v) {24 Intent intent = new Intent();25 intent.setClass(MainActivity.this, NextActivity.class);26 startActivity(intent);27 }28 });29 }30 }
第二个是:NextActivity
1 package com.easymorse; 2 3 import android.app.Activity; 4 import android.os.Bundle; 5 6 public class NextActivity extends Activity { 7 @Override 8 protected void onCreate(Bundle savedInstanceState) { 9 super.onCreate(savedInstanceState);10 this.setContentView(R.layout.next_activity);11 }12 }
然后,要在AndroidManifest.xml中增加这两个Activity的声明。
1 26 7 179 14 1510 1311 12 16 18 19
在string.xml中增加常量字符串:
1 23 Hello World, MainActivity! 4activity.forward.demo 5下一步 6
layout目录下除了原有的main.xml:
1 27 12 13
还需要创建NextActivity的布局文件声明,比如next_activity.xml:
1 26 7
这种情况下,如果按回退键将回到MainActivity。如果不希望回退到前一个activity,而是退出。需要这样:
1 this.button = (Button) this.findViewById(R.id.Button01); 2 this.button.setOnClickListener(new OnClickListener() { 3 @Override 4 public void onClick(View v) { 5 Intent intent = new Intent(); 6 intent.setClass(MainActivity.this, NextActivity.class); 7 startActivity(intent); 8 finish(); 9 }10 });