startActivityForResult无法回调

startActivityForResult无法回调Android中常常需要用到startActivityForResult()方法来获得Activity回执信息的场景。但有时不注意就会导致onActivityResult()不被调用,或者调用时机错误。以下总结开发中遇到过的两种情况:Fragment在fragment作为调用者使用时需要注意,Fragment有自己的一套API而不是通过其父类API进行调用的,因此调用自己的API时需要重写自己…

大家好,又见面了,我是你们的朋友全栈君。

startActivityForResult无法回调

Android中常常需要用到startActivityForResult()方法来获得Activity回执信息的场景。但有时不注意就会导致onActivityResult()不被调用,或者调用时机错误。以下总结开发中遇到过的两种情况:

Fragment

在fragment作为调用者使用时需要注意,Fragment有自己的一套API而不是通过其父类API进行调用的,因此调用自己的API时需要重写自己的回调方法。使用getActivity.startActivityForResult会回调到附属Activity的回调方法中。

NewTask

有时候我们在启动Activity时会用到NewTask的启动模式,因为启动是在新的栈中,因此无法跨栈进行result回调。采用这种方式时onActivityResult会在跳转过去后立即调用,而不是在返回时调用。如果需要使用startActvitiyForResult主要不是使用新栈模式。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157435.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • The promises and challenges of std::async task-based parallelism in C++11 C++11 std::async/future/p…

    The promises and challenges of std::async task-based parallelism in C++11 C++11 std::async/future/p…

    2022年3月2日
    64
  • 修改表名列名mysql_怎么修改mysql的表名和列名?

    修改表名列名mysql_怎么修改mysql的表名和列名?在mysql中,可以通过“ALTERTABLE旧表名RENAME新表名;”语句来修改表名,通过“ALTERTABLE表名CHANGE旧字段名/列名新字段名/列名新数据类型;”语句来修改列名。修改mysql的表名MySQL通过ALTERTABLE语句来实现表名的修改,语法规则如下:ALTERTABLERENAME[TO];其中,TO为可选参数,使用与否均不影…

    2022年5月17日
    40
  • HelixServe搭建局域网流媒体服务器

    HelixServe搭建局域网流媒体服务器查了两天资料,有了些眉目,在成功搭建数次之后把这篇博客补上    但成功搭建并不是一蹴而就的,从开始的一脸懵逼,到中途的困难频繁造访几欲放弃打算转向研究其他实现方式,再到最后的豁然开朗,真应了秀娟说的那句话:    学习的乐趣就在于前期为伊消得人憔悴的酝酿,在于中期一知半解的朦胧,在于后期柳暗花明的顿悟。    不多说了,感谢自己挺过来了,坚持下来,尝到了胜利的喜悦…

    2022年6月6日
    164
  • H5-BLOB

    H5-BLOB

    2021年6月5日
    183
  • linux tar压缩文件命令,tar打包压缩文件命令

    linux tar压缩文件命令,tar打包压缩文件命令tar命令tar命令用于将多个文件合成1个文件,wiki中把这个命令和cpio、shar等一起叫做archive文件,个人理解是归档,合成一个文件,后就可以用gzip、bz2、xz等工具进行压缩,同时也能方便在各个计算机间传输,有点类似windows下共享的zip文件。wiki上这个图比较形象,tar把零散的文件合拢,gzip把合拢的文件压缩。一、命令语法tar[选项…][FILE]…..

    2022年5月22日
    47
  • copy和deepcopy[通俗易懂]

    copy和deepcopy[通俗易懂]总结一下,如果一个集合中的元素是字符串,copy之后则是两个互不相干的新集合,内存地址也不一样,修改任意一个另一个不会做出改变,但是如果其中的元素有数组的话,那么情况就不一样了,copy后虽然集合是两个完全新的集合,但是集合中的数组指向的是同一个内存地址,在此集合中对其中的数组数据进行修改,另一个集合中的元素是数组的内容也会改变,如果想完完全全独立出来是两个独立的集合,就得使用deepcopy而不…

    2022年10月2日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号