Activity间的跳转
Android中的Activity就是Android应用与用户的接口,所以了解Activity间的跳转还是必要的。在 Android 中,不同的 Activity 实例可能运行在一个进程中,也可能运行在不同的进程中。因此我们需要一种特别的机制帮助我们在 Activity 之间传递消息。Android 中通过 Intent 对象来表示一条消息,一个 Intent 对象不仅包含有这个消息的目的地,还可以包含消息的内容,这好比一封 Email,其中不仅应该包含收件地址,还可以包含具体的内容。对于一个 Intent 对象,消息“目的地”是必须的,而内容则是可选项。(关于Intent在这篇详解android学习日记20--连接组件之Intent和IntentFilter)
在MainActivity.java 代码里,OtherActivity.class表示收件地址,putExtra("Main", "Activity间传送数据")表示发送具体内容
"Main"是发送内容的标识,"Activity间传送数据"是实际发送的信息。
1 // 新建个 意图Intent,连接两个Activity 2 Intent intent = new Intent(MainActivity.this,OtherActivity.class); 3 // 发送数据 4 intent.putExtra("Main", "Activity间传送数据"); 5 // 启动 令一个Activity 6 this.startActivity(intent);
在OtherActivity.java 里
1 // 这里的intent不能new,而是 this.getIntent()接收 2 Intent intent = this.getIntent(); 3 // 获取传递的参数Main的数据 4 String str = intent.getStringExtra("Main");
此外,新建的Activity还要在androidmanifest.xml 声明,这点前面也一直强调了
1 <activity 2 android:name="com.example.gotootheract.OtherActivity" 3 android:label="OtherActivity" > 4 5 </activity>
详细代码就不再贴上来,演示结果如下
跳转到第二个Activity
点击HideActivity则执行this.finish();//退出当前Activity,
点击ExitActivity则执行System.exit(0);//退出程序
区别是前者还在device的进程里