设置IntentFlag的方法
Intent intent = new Intent();
intent.setFlags(Intene.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Activity的启动方法
·显式启动:
·方式一:class跳转
Intent intent = new Intent(Activity1.this,Activity2.xclass);
startActivity(intent);
·方式二:包名.类名跳转
Intent intent=new Intent();intent.setClassName(context,“com.maizi.lesson.activitylesson1”);startActivity(intent);
·方式三:ComponentName跳转
Intent intent=new Intent();intent.setComponent(new Component(context,Activity2.class))
startActivity(intent);
·隐式启动
在xml文件中设置过滤器
<intent-fieter>
<action android:name="android.intent.action.MYACTION" />//名
<category android:name="android.intent.category.DEFAULT" />//默认
<category android:name="android.intent.category.MYCATEGORY" />
</intent-filter>
Activity之间的数据传递
第一种
发送方::
Intent.putExtra(String name,数据类型 value)
接收方::
第二种
发送方::
bundle 算是一个数据集
接收方::先获取intent再获取bundle
对于整形数字来说 setText的时候在后面加“”否则报错
复杂类型的数据传递
·Serilziable
把需要传递的类实现Serilziable接口
发送方::
先实现接口
实例化对象
接收方::
·Parceable
把需要传递的类实现Parceable接口
Activity数据的回传
·startActivityForResult(intent)
·onActivityResult
启动系统的Activity组件
·拨打电话
intent.setAction(Intent.ACTION_CALL);
·发送短信
intent.setAction(Intent.ACTION_SENDTO);
在xml中注册声明
·打开相机
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);