我有几个意图使用startActivityforResult()
启动。我想收到一些反馈意见。如何为每个onActivityResult()
撰写startActivityforResult()
?
答案 0 :(得分:2)
您可以将requestCode作为第二个参数传递给startActivityForResult。此整数值将在onActivityResult中以requestCode的形式返回给您。
假设您使用不同的请求代码进行呼叫。
startActivityForResult(i1, 1);
startActivityForResult(i2, 2);
然后你的onActivityResult看起来像:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case 1:
// do what u hv to do for first start activity
break;
case 2:
// for second start activity
break;
}
}
在您启动的活动2中,使用以下apis返回数据:
public final void setResult (int resultCode)
public final void setResult (int resultCode, Intent data) // If you want to pass some data
阅读以下文档了解更多详情: