startActivityForResult()用法
2014-08-24 16:09
357 查看
跳转页面时,原有的界面有时需要从新界面取得数据,
这就需要用startActivityForResult来跳转,
如,从activityA跳转到activityB:
activityA的主要跳转过程代码代码:跳转到activityB,要求返回数据
Intent intent = new Intent(this, ActivityB.class);
startActivityForResult(intent, NUM);
GET_CODE是int型,任意数值
activityB的主要跳转代码,activityB结束返回时的代码
setResult(RESULT_OK, (new Intent()).setAction("Corky!"));
finish();
而在ActivityA中需要重写发放onActivityResult来获取数据
当activityB在finish之后,activityA会接收到消息,系统会调用activityA中的onActivityResult方法:
protected void onActivityResult(int requestCode, int resultCode,Intent data) {
if (requestCode == NUM) {
//do something
if (resultCode == RESULT_CANCELED) {
//do something
} else {
//do something
}
}
}
ActivityA的NUM与ActivityB的NUM相同,主要用来区分跳转页面
就是说activityA可能会跳转到很多不同的界面来获得信息,那么怎么区分呢,
就用这个NUM。
参数中的resultCode的值是由activityB中
的setResult的第一个参数决定的,data则为可选参数,可以传递更多的信息。
这就需要用startActivityForResult来跳转,
如,从activityA跳转到activityB:
activityA的主要跳转过程代码代码:跳转到activityB,要求返回数据
Intent intent = new Intent(this, ActivityB.class);
startActivityForResult(intent, NUM);
GET_CODE是int型,任意数值
activityB的主要跳转代码,activityB结束返回时的代码
setResult(RESULT_OK, (new Intent()).setAction("Corky!"));
finish();
而在ActivityA中需要重写发放onActivityResult来获取数据
当activityB在finish之后,activityA会接收到消息,系统会调用activityA中的onActivityResult方法:
protected void onActivityResult(int requestCode, int resultCode,Intent data) {
if (requestCode == NUM) {
//do something
if (resultCode == RESULT_CANCELED) {
//do something
} else {
//do something
}
}
}
ActivityA的NUM与ActivityB的NUM相同,主要用来区分跳转页面
就是说activityA可能会跳转到很多不同的界面来获得信息,那么怎么区分呢,
就用这个NUM。
参数中的resultCode的值是由activityB中
的setResult的第一个参数决定的,data则为可选参数,可以传递更多的信息。
相关文章推荐
- Android startActivityForResult(intent, requestCode)的用法。
- startActivityForResult 的用法
- startActivityForResult用法
- startActivityForResult的详细用法
- startActivityForResult 用法
- Android多界面切换之 startActivity() 和 startActivityForResult()用法详解
- Intent的用法(一),启动activity传递数据以及startActivityForResult
- Android startActivityForResult(intent, requestCode)的用法。
- Android startActivityForResult()的用法
- startActivityForResult 用法
- startActivityForResult 用法
- startActivityForResult()的用法
- startActivityForResult()的用法
- startActivityForResult()的用法(转)
- startActivityForResult(intent, requestCode)用法
- startActivityForResult的详细用法
- Android中startActivityForResult()的用法
- Android------startActivityForResult的详细用法
- startActivityForResult用法详解
- startActivityForResult()的用法