ViewPager的onActivityResult没有调用

问题:

viewPager中的一个pager使用startActivityForResult跳转到一个Activity 在Activity中点击按钮调用setResult(Activity.RESULT_OK, intent)理想中的效果应该是返回到pager中调用onActivityResult
但是在pager的onActivityResult没有被调用

原因:

从网上看了很多解决方法都没有用,我在viewPager所在的Acticity里添加onActivityResult方法,断点显示是被调用了,那就是说我的setResult被Activity劫持了,没有传到pager里

解决方法:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 123987 && resultCode == Activity.RESULT_OK) {

        } else {
            for (ContentBasePager c : pagerList){
                c.onActivityResult(requestCode, resultCode, data);
            }
        }
    }

在Activity的onActivityResult方法中遍历viewPager的子pager,然后调用子pager的onActivityResult.问题解决

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【 Android四大组件之一 主要用于与用户进行交互,在一个App中可能存在零个或多个Activity 】 1....
    征程_Journey阅读 1,973评论 0 4
  • Android 的活动是可以包含用户界面的组件,主要用于与用户进行交互。 1 手动创建活动 手动创建活动可以加深对...
    deniro阅读 3,729评论 0 10
  • 1.当默认创建一个新项目时,开发工具会帮我们创建一个MainActivity.java,以下是用AndroidSt...
    AndrewCheung阅读 808评论 0 1
  • 1、概述首先我们简单回顾一下,相信大家对Fragment的都不陌生,对于Fragment的使用,一方面Activi...
    Rhett_yu阅读 1,041评论 1 0
  • 亲爱的自己 今天儿子不想去上课,我没有勉强孩子。之后一定是我的行为让儿子感到我是他值得信任的人,于是他敞开...
    寧曦阅读 74评论 0 0