我的项目中有两个类:main 和 importer。Main 使用 startActivityForResult() 启动 Importer,但是 Importer 如何将其状态返回给 Main?谢谢 :)
user2355660
问问题
45 次
3 回答
1
完成Importer
工作后,它必须调用setResult(int, Intent)
和finish()
. Main 将在 中接收结果onActivityResult
。我假设两者都Importer
可以Main
扩展Activity
。
在里面覆盖这个方法Main
:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
里面importer
Intent data = new Intent();
data.putExtra("result", "i am the result");
setResult(1000, data);
finish();
然后
onActivityResult
将收到 resultCode = 1000
并data != null
于 2013-06-26T15:29:28.970 回答
0
启动 Activity2 为startActivityForResult(Activity2,REQUEST_CODE)
在你完成你的任务之后Activity2
Intent output = new Intent();
output.putExtra("value1", somedata);
setResult(RESULT_OK, output);
finish();
并在 Activity1 中使用 onActivityResult()
@Override
public void onActivityResult (int requestCode, int resultCode, Intent data)
{
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK && data != null)
val1 = data.getIntExtra("value1");
}
于 2013-06-26T15:36:26.287 回答