`
jianweicao
  • 浏览: 116810 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于Fragment 不响应 onActivityResult方法

 
阅读更多

在使用fragment 和 fragmentActivity组合,调用startActivityForResult方法可能没有响应,还不知道问题出在哪里。现梳理一下正确的调用方式。

 

第一种情况:

fragment.java 中

getActivity().startActivityForResult(intent,1001);

 这种情况下fragmentActivity下的onActivityResult方法被调用。fragment中的onActivityResult不会被调用。

第二种情况:

fragment.java 中

startActivityForResult(intent,1001);

 这种情况下fragmentActivity下的onActivityResult方法被调用,同时注意的是如果fragmentActivity下的onActivityResult方法调用了super.onActivityResult方法,fragment中的onActivityResult也会被调用。

 

最后,一般情况下使用第二种情况,且不重载fragmentActivity下的onActivityResult方法,除非fragment和activity有互动。出现标题现象的原因大多是重载fragmentActivity下的onActivityResult方法但是没有调用super.onActivityResult方法

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics