Activity之间startActivityForResult传递和接受数据

首先在Aactivity启动Bactivity

//                        如果没有登录 跳转到 登录界面
                        Intent intent = new Intent(getApplicationContext(), Bactivity.class);
                        // 传入数据到Bactivity
                        intent.putExtra(ConstantsString.INTENT_MAIN_LAST_CHECKED_ID, getLsatCheckedId());
                        startActivityForResult(intent, ConstantsNum.REQUEST_CODE_START_LOGIN_ACTIVITY);

在Bactivity中接受Aactivity的数据


//        获取跳转过来的 intent,然后获取里面传入的数据
        lastCheckedId = getIntent().getIntExtra(ConstantsString.INTENT_MAIN_LAST_CHECKED_ID, -1);

在Bactivity中设置返回的数据

  Intent intent = new Intent(Bactivity.this, Aactivity.class);
                intent.putExtra(ConstantsString.INTENT_MAIN_LAST_CHECKED_ID, lastCheckedId);
                // 第一个参数resultCode用于在A中判断是哪个activity返回的数据
                setResult(ConstantsNum.RESULT_CODE_CANCLE_LOGIN, intent);
                finish();

在Aactivity中onActivityResult获取B的结果

 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
//        resultCode  判断是从哪个activity来的
        if (resultCode == ConstantsNum.RESULT_CODE_CANCLE_LOGIN) {
            mMainRg.check(data.getIntExtra(ConstantsString.INTENT_MAIN_LAST_CHECKED_ID, 0));
        }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,183评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,575评论 25 709
  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 28,585评论 5 20
  • 《ilua》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 1...
    叶染柒丶阅读 13,826评论 0 11
  • 亲爱的师父: 其实我是个懒散的人,在网络数十年,早已看淡了友谊,很少主动加谁。但是,在群里我一眼就注意到了你,我也...
    惑世妖桃阅读 1,864评论 1 1

友情链接更多精彩内容