Android Fragment中使用Arouter跳转到Activity后返回Fragment不回调onActivityResult

Fragment中通过路由跳转到Activity

  • 跳转传递参数

    通过Arouter跳转

    Postcard postcard = ARouter.getInstance().build(RouterConstant.ACTION_TRANSMANAGERACTIVITY1);
    Bundle bundle = new Bundle();
    bundle.putInt("code", 404);
    postcard.with(bundle); //设置bundle
    fragmentNavigation(postcard,10000);
    
    
    private void fragmentNavigation(Postcard postcard , int requestCode) { 
        LogisticsCenter.completion(postcard);
        Intent intent = new Intent(getActivity(),postcard.getDestination());
        intent.putExtras(postcard.getExtras());
        startActivityForResult(intent, requestCode);
    }
    
  • Activity中获取参数

      ARouter.getInstance().inject(this);
      num =  getIntent().getExtras().getInt("code");
    

注意传递的参数Bundle也可以如下传递Bundle参数

设置Bundle参数

postcard.withBundle("Bundle",bundle);

Activity中获取Bundle参数

getIntent().getBundleExtra("Bundle").getInt("code");

在Activity中返回时别忘记了设置结果或者参数:

setResult(Activity.RESULT_OK);

Fragment总就可以重写onActivityResult方法,在此方法获取上一个Activity返回来的数据了或者处理相关业务逻辑了;

注意onActivityResult方法中int requestCode, int resultCode的区别;

相关推荐
sunly_7 小时前
Flutter:启动屏逻辑处理02:启动页
android·javascript·flutter
Sgq丶8 小时前
Android Studio 配置 proto
android·ide·android studio
_小马快跑_12 小时前
ConstraintLayout 中的ImageFilterView探索:处理图片圆角、亮度、饱和度、图片重叠等
android
IT-sec12 小时前
jquery-picture-cut 任意文件上传(CVE-2018-9208)
android·前端·javascript·安全·web安全·网络安全·jquery
xiaoduyyy13 小时前
【Android】RecyclerView回收复用机制
android
林北芒大果13 小时前
【Flutter】搭建Flutter开发环境,安卓开发
android·flutter
m0_7482302115 小时前
MySQL 数据库连接池爆满问题排查与解决
android·数据库·mysql
SunshineBrother15 小时前
Flutter求职、面试20+面试官总结:Dart篇
android·前端·flutter
鸿儒51716 小时前
利用adb工具安装卸载安卓平板(手机)软件
android·adb·智能手机
软件聚导航19 小时前
uniapp 安卓和ios震动方法,支持息屏和后台震动,ios和安卓均通过测试
android·ios·uni-app