说明:在Android应用程序当中创建多个activity,并且启动一个activity的方法,以及activity之间的跳转。
例子:在MainActivity里面添加一个按钮,触动按钮,跳转到SecondActivity。
步骤:1、定义一个类,继承Activity,复写Activity当中的OnCreate方法。
package com.away.b_01_multiactivity; import android.app.Activity; import android.os.Bundle; public class SecondActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second); } }同时,也新建一个布局文件second.xml ,并且在SecondActivity的OnCreate方法中调用setContentView,设置SecondActivity使用的布局文件。
<TextView android:id="@+id/secondTextView" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="第二个Activity"/>2、在AndroidMainfest.xml文件当中注册Activity。
<activity android:name="com.away.b_01_multiactivity.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.away.b_01_multiactivity.SecondActivity" android:label="second" > </activity>PS:<intent-filter>作为activity的子标签,它的作用是设置某个activity为应用程序默认启动的activity。android:label的作用就是这个activity显示到手机上面的名字。
到这里activity就创建好了,但是如何实现activity之间的跳转呢?
3、在activity_main.xml当中添加一个<Button>。
<Button android:id="@+id/Button" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/TextView" android:text="启动SecondAtivity"/>4、在MainActivity.java里面生成意图对象(Intent),调用 setClass方法设置所要启动的Activity,调用startActivity方法启动Activity。
package com.away.b_01_multiactivity; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button=(Button)findViewById(R.id.Button); button.setOnClickListener(new ButtonListener()); } class ButtonListener implements OnClickListener{ @Override public void onClick(View v) { Intent intent=new Intent(); //setClass函数的第一个参数是一个Context对象 //Context是一个类,Activity是Context类的子类,也就是说,所有的Activity对象都可以向上转型为Context对象 //setClass函数的第二个参数是Class对象,在当前场景下,应该传入需要被启动的Activity的class对象 intent.setClass(MainActivity.this, SecondActivity.class); startActivity(intent); } } }附上效果图:(原创不易,转载请标明出处 = - =)
结构图:
原文:http://blog.csdn.net/ycwol/article/details/39736075