1、Activity的启动模式
Activity
Activity是一个Android应用程序组件(也称为Android四大组件之一),它提供了一个屏幕,用户可以通过该
屏幕进行交互以执行某些操作,例如拨打电话,拍照,发送电子邮件或查看地图。每个活动都有一个窗口,
用于绘制其用户界面。窗口通常填满屏幕,但可能比屏幕小,并漂浮在其他窗口的顶部。
1)定义一个类继承自android.app.Activity或者其子类
2)在res/layout目录中创建一个xml文件,用于创建Activity的布局;
3)在AndroidManifest.xml文件中注册Activity;
4)重写Activity的onCreate**()方法,并在该方法中使用setContentView******
加载指定的布局文件;
·Actlvity的启动模式有四种,分别是standard、singleTop、singleTask和singlelnstance。
Intent
Intent的概念:
·Android中提供了Intent机制来协助应用间的交互与通讯,或者采用更准确的说法是,Intent不仅可用于应用
程序之间,也可用于应用程序内部的activity,service和broadcast receiver之间的交互。Intent这个英语单词
的本意是“目的、意向、意图”。
·Intent是一种运行时绑定(runtime binding)机制,它能在程序运行的过程中连接两个不同的组件。通过
Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来响
应。
Android下的任务栈
- Android系统中的任务栈,类似于一个容器,用于管理所有的
- Activity实例。在存放Activity时,满足“先进后出(First-In/Last-Out) 的原则。
2、Activity的四种启动模式
- Activity的启动模式有四种,分别是standard、singleTop、singleTask和 singlelnstance。
- 在AndroidManifest.xml中,可以通过<activity>标签的android:launchMode属性设置启动模式。
3、在Activity中使用Intent
显式意图和隐式意图 - 显式意图
- 即在通过Intent启动Activity时,需明确指定激活组件的名称。如果需要在本应用中启动其他的Activity时,可以使用显式意图来启动Activity。
Intent intent=new Intent(this,Activity02.class); startActivity(intent);
- 显式意图还可以根据目标组件的包名、全路径名来指定开启组
intent.setClassName("cn.itcast.xxx","cn.itcast.xxx.xxxx");
startActivity(intent);
4、Activity中的数据传递
数据传递方式
putExtra()不仅可以传递基本类型数据,还可以传递Bundle对象。
Bundle bundle = new Bundle();
bundle.putString("name","Linda");
Intent intent=new Intent(this,Activity02.class);
intent.putExtra(bundle);
startActivity(intent);
将数据从Activity02中取出
Intent intent = getlntent ( ) ;
Bundle bundle=intent.getExtras();
String stuName=bundle.getString("name");I