您的位置:首页 > 其它

fragment中startActivityForResult后onActivityResult不响应

2016-07-26 23:46 295 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/zhoujiupi/article/details/52040765

1、首先在fragment A中要用startActivityForResult(intent, REQUEST_CODE_FILL_LOCATION);而不是getActivity().startActivityForResult()

2.在新启动的activity B中getActivity().setResult(PublishFragment.RESULE_CODE_FILL_LOCATION_OK, intent);

3、在fragment A中onActivityResult(int requestCode, int resultCode, Intent data)中处理结果没有响应

后来查资料发现是fragment A所在的FragmentActivity的onActivityResult中没有调用super.onActivityResult(requestCode, resultCode, data);

处理方法是在与Fragment绑定的FragmentActivity中重写onActivityResult方法。返回的result先传至Fragment所在的 FragmentActiivity。这个FragementActivity的onActivityResult函数必须调用 super.onActiivtyResult(requestCode, resultCode, data)。super.onActiivtyResult会将未被处理的result消息继续传给FragmentActivity中的 fragement的onActiivtyResult。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: