android_定义多个Activity及跳转

来源:互联网 发布:诺基亚6120c软件 编辑:程序博客网 时间:2024/05/01 18:50

说明:在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{@Overrideprotected 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{@Overridepublic 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);}    }}

也可以这样写:

Intent intent = new Intent(MainActivity.this, SecondActivity.class);startActivity(intent);

还可以这样写:

startActivity(new Intent(MainActivity.this, SecondActivity.class));

只要这两句,就可以实现从MainActivity页面跳转到SecoidActivity页面了。

附上效果图:(原创不易,转载请标明出处 = - =)


结构图:


有的时候,在跳转页面时还需要传递数据,这个时候可以看这里>>>Activity传值。

欢迎交流 http://blog.csdn.net/ycwol/article/details/39736075



4 0