本文主要是介绍Activity 中包含Fragment ,startActivityForResult 跳转其他页面,onActivityResult没有回调?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在Fragment中使用startActivityForResult之后,onActivityResult的调用是从activity中开始的(即会先调用activity中的onActivityResult)。
一.只嵌套了一层Fragment(比如activity中使用了viewPager,viewPager中添加了几个Fragment)
在这种情况下要注意几个点:
1.在Fragment中使用startActivityForResult的时候,不要使用getActivity().startActivityForResult,而是应该直接使startActivityForResult()。
2.如果activity中重写了onActivityResult,那么activity中的onActivityResult一定要加上super.onActivityResult(requestCode, resultCode, data)。
如果违反了上面两种情况,那么onActivityResult只能够传递到activity中的,无法传递到Fragment中的。
没有违反上面两种情况的前提下,可以直接在Fragment中使用startActivityForResult和onActivityResult,和在activity中使用的一样。
这篇关于Activity 中包含Fragment ,startActivityForResult 跳转其他页面,onActivityResult没有回调?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!