Intent用法实例
1.无参数Activity跳转
Intent it = new Intent(Activity.Main.this, Activity2.class);
startActivity(it);
2.向下一个Activity传递数据(使用Bundle和Intent.putExtras)
Intent it = new Intent(Activity.Main.this, Activity2.class);
Bundle bundle=new Bundle();
bundle.putString("name", "要传的信息"); //添加绑定数据
it.putExtras(bundle); // 将绑定的数据压入 intent中
startActivity(it); startActivityForResult(it,REQUEST_CODE);
//对于数据的获取可以采用:
Bundle bundle=getIntent().getExtras();
String name=bundle.getString("name");
3.需要Activity返回结果的跳转(使用setResult,针对startActivityForResult(REQUEST_CODE,it)启动的Activity)
有返回值的跳转
startActivityForResult(intent,requestCode(请求标识));
onActivityResult(int requestCode(请求标识),int resultCode(结果标识),Intent data(数据))
//RESULE_OK可以作为结果标识
setResult(RESULT_OK, intent);
这里结果标识和请求标识,可以想做是打电话,A向B打电话,
A的电话号码就叫标识,B看到是好朋友A打的电话就接了,
A需要知道B的电话才能给B打,B的电话就可以看作是结果标识
(有点抽象,哈哈,例子不是重点,理解更重要)
4.回调上一个Activity的结果处理函数(onActivityResult) 不理解回调函数请点击
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==REQUEST_CODE){//根据结果码进行处理
if(resultCode==RESULT_CANCELED)
setTitle("cancle");
else if (resultCode==RESULT_OK) {
String temp=null;
Bundle bundle=data.getExtras();
if(bundle!=null)
temp=bundle.getString("name");
setTitle(temp);
}
}
}

本文详细介绍了Android中Intent的多种使用场景,包括无参数Activity跳转、携带数据的跳转、带有返回值的跳转及回调处理等。通过具体示例帮助开发者掌握Intent的基本操作。
1149

被折叠的 条评论
为什么被折叠?



