intent 对将要发生的动作的抽象描述
(1)描述将要发生的活动
Intent intent2=new Intent(activity.this,activity2.class);
本活动 要发生的活动
(2)把键值对封在Bundle类型的extra里面,传递给下一个activity
intent1.putExtra("activity", "数据来自activity");
Bundle bundle = new Bundle();
bundle.putString("name","value");
Intent intent1 = new Intent();
intent1.putExtras(bundle);
(3)在启动的另外的activity结束后,会返回到本activity中,并通过result_code判定执行的怎样
通过不同的请求码来启动不同的activity,在回调函数里通过请求码来分辨是哪个activity的返回
startActivityForResult(intent1,REQUEST_CODE);
子activity结束后的回调方法 本程序中设的请求码 子activity设定的 那个结束的activity
protected void OnActivityResult(int requestCode,int resultCode, Intent date){
//如果参数requestCode等于程序设置的请求码
if(requestCode == REQUESTCODE){
//如果参数resultCode等于常量REQUEST_OK
if(resultCode == REQUEST_OK){
}
//如果参数resultCode等于常量REQUEST_CANCELED
else if(resultCode == REQUEST_CANCELED){
//通过结束的activity的名字获取一个Bundle来得到封装的值
Bundle extras = date.getExtras();
if(extras != null){
string temp = extras.getString("name");
}
}
}
}
(4)extras可以返回键值对
//设置mintent结束后的返回值是RESULT_OK;
setResult(RESULT_OK,mintent);
//结束activity mintent;
最后调用finish();
(5)启动一个未知的Activity //系统自定义的一个Activity通过 描述来启动他
Intent intent1 = new Intent(Intent.ACTION_DIAL,Uri.parse("tel:115-1345"));
startActivity(intent1);
(6)intent对操作的描述分为哪几部分
【1】activity执行动作的描述
【2】date对执行动作的数据
【3】type对数据类型
【4】category动作的附加信息
【5】extras附件信息
【6】component目标组件
(7)系统自定义Activity
ACTIVITY_MAIN标记为程序的入口
ACTIVITY_VIEW和data一起使用用于跟用户显示数据
ACTIVITY_DIAL给用户打电话
ACTIVITY_PICK从一组特定的数据中检索数据
ACTIVITY_EDIT编辑数据
ACTIVITY_DELETE 删除数据