当前位置: 代码迷 >> Android >> setResult(Activity.RESULT_OK, intent)这个Activity不返回值解决方案
  详细解决方案

setResult(Activity.RESULT_OK, intent)这个Activity不返回值解决方案

热度:96   发布时间:2016-05-01 18:01:02.0
setResult(Activity.RESULT_OK, intent)这个Activity不返回值
是这样的
我有2个Activity。都不是main 和 入口 activity 


a 启动 startActivityForResult(intent, 0) 进入 b activity; 并重写 onActivityResult ..

在b activity 中点击按钮 调用setResult 返回结果,并finish 。

结果在a activity中并不执行onActivityResult 方法..

请问何故?

------解决方案--------------------
流程上是这样,贴代码看看。
------解决方案--------------------
setResult(RESULT_FIRST_USER, intent);
改成
setResult(RESULT_OK, intent); //RESULT_OK=-1;

就OK了
------解决方案--------------------
那调试了吗 设断点看看 有时Logcat会挂出不了信息的
------解决方案--------------------
Intent intent = getIntent();
Bundle bundle = intent.getExtras();


上面部分是获取A传递过来的数据! 
下面部分是想返回数据的!需要重新构造Intent
Intent intent1=new Intent();
Bundle bundle1=new Bundle();
bundle1.putString("value", edit.getEditableText().toString());
intent1.putExtras(bundle1);
setResult(RESULT_FIRST_USER, intent1);

楼主试试吧!
finish();


------解决方案--------------------
不会吧 我这边试啦 都可以的啊!

可能是你的其它程序出了问题吧!!

------解决方案--------------------
你是用真机测试的吗?
  相关解决方案