首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏算法微时光

    android之onActivityResult介绍

    image.png onActivityResult 在一个主界面(主Activity)通过意图跳转至多个不同子Activity上去,当子模块的代码执行完毕后再次返回主页面,将子activity中得到的数据显示在主界面 这种带数据的意图跳转需要使用activity的onActivityResult()方法。 第二个参数:如果> = 0,当Activity结束时requestCode将归还在onActivityResult()中。 onActivityResult(int requestCode, int resultCode, Inten data) onActivityResult中 第一个参数:这个整数requestCode resultCode, Intent data) 在意图跳转的目的地界面调用这个方法把Activity想要返回的数据返回到主Activity, 第一个参数:当Activity结束时resultCode将归还在onActivityResult

    1.9K40发布于 2020-12-10
  • 来自专栏Android原创

    优雅的监听onActivityResult

    一、思考 当Activity A启动一个Activity B后,B finish,我们可能需要处理B返回的值,此时,我们可能就需要用到了onActivityResult,需要在Activity A中重写实现 所以我产生以下思路:通过给当前的Activity添加一个空壳的Fragment,往空壳的Fragment中传入Listener,然后由该Fragment去启动新的Activity,最终在这个空壳的Fragment的onActivityResult requestCode, OnActivityResultCallBack callBack); interface OnActivityResultCallBack { void onActivityResult (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode = null) { callBack.onActivityResult(resultCode, data); } } 这里使用一个字典SparseArray

    2.4K70发布于 2019-09-09
  • 来自专栏路遥的专栏

    是时候丢掉 onActivityResult 了 !

    为什么要丢掉 onActivityResult ? 如何启动一个新的 Activity,并获取返回值? 你的答案肯定是 startActivityForResult 和 onActivityResult 。 没错,一直以来,在某些场景下,例如启动系统相机拍照,返回当前页面后获取照片数据,我们并没有其他选择,只能在 onActivityResult 中进行处理。 在介绍新 API 之前,我们不妨思考一下,为什么 Google 要丢掉 onActivityResult ? 减少样板代码,解耦 ,更易测试 。 可能一直以来我们也只有这一个选择,所以也很少看到有人抱怨 onActivityResult。精益求精的 Google 工程师为我们改进了这一问题。

    1K20发布于 2021-08-31
  • 来自专栏全栈程序员必看

    完美解决方案_onActivityResult

    根据错误信息的提示,增加FLAG_ACTIVITY_NEW_TASK flag,即可解决问题。 解决方法:

    43420编辑于 2022-11-10
  • 来自专栏program

    再见 onActivityResult!你好 Activity Results API

    背景 在项目开发中,发现startActivityForResult和onActivityResult方法已经被废弃了,这是为什么呢?有代码强迫症的我开始了研究。 (Object) callback}. */ @CallSuper @Override @Deprecated protected void onActivityResult mActivityResultRegistry.dispatchResult(requestCode, resultCode, data)) { super.onActivityResult 但随之产生了许多问题,随着应用功能不断添加迭代,onActivityResult方法会存在各种处理数据的回调,嵌套严重,难以维护,并且还得定义一堆额外的常量REQUEST_CODE,用于判断是哪个请求的回调结果 :1.3.0-alpha02 中,已经废弃了startActivityForResult和onActivityResult方法。

    1.8K30编辑于 2022-06-29
  • 来自专栏程序亦非猿

    onActivityResult!你好,Activity Results API!

    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) 随着应用的扩展,onActivityResult回调方法各种嵌套、耦合严重、难以维护。 最常见的场景就是调用系统相机相册获取照片了。 onActivityResult 现状? :1.3.0-alpha02 中,已经废弃了startActivityForResult和onActivityResult方法。 相比onActivityResult有哪些优势?接下来,将一一为你解答。

    2K40发布于 2020-11-10
  • 来自专栏进击的多媒体开发

    onActivityResult!你好,Activity Results API!

    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) 随着应用的扩展,onActivityResult回调方法各种嵌套、耦合严重、难以维护。 最常见的场景就是调用系统相机相册获取照片了。 onActivityResult 现状? :1.3.0-alpha02 中,已经废弃了startActivityForResult和onActivityResult方法。 相比onActivityResult有哪些优势?接下来,将一一为你解答。

    2.1K20发布于 2020-11-10
  • 来自专栏私人订制

    Android onActivityResult获取返回值的用法

    现有 MainActivity,当它进入到 SecondActivity 后,在 SecondActivity 中进行了某些操作然后需要将值返回给 MainActivity 时,就需要用到 onActivityResult (2)onActivityResult()方法中的第二个参数就是SecondActivity传回来的键,第三个参数就是SecondActivity传回来的键对应的值。 (int requestCode, int resultCode, Intent data) { Log.i(TAG, "onActivityResult"+"requestCode"+requestCode (requestCode, resultCode, data); } SecondActivity 类中的代码: 这个里面的 RESULT_CODE、intent 分别跟上段代码中 onActivityResult ; setResult(RESULT_CODE, intent); finish(); } 补充说明 onActivityResult() 方法中的第二个参数 resultCode

    2.3K30编辑于 2023-05-10
  • 来自专栏全栈程序员必看

    android onresume方法,Android onActivityResult()和onResume()的执行顺序

    问题回顾: 在Android8.0手机上不能直接安装Apk,需要权限申请,回调后执行onActivityResult()方法,并弹出对应的dialog,这时需要判断当前Activity是否处于resume 问题本质 Activity跳转到系统应用后回调onActivityResult() 先执行还是onResume()先执行? (int requestCode, int resultCode, Intent data) { } onActivityResult()注释中有这么一句话: You will receive this (意思是说当你的Activity重新启动时 onActivityResult() 会在onResume()之前执行) 很显然,如果你的Activity 调用了 startActivityForResult () 方法启动,回调之后会先执行 onActivityResult() ,然后执行onResume() 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/139798.

    1K20编辑于 2022-09-03
  • 来自专栏全栈程序员必看

    java中的onresume_java – onActivityResult()之前调用onResume()?

    System.out.println(e); } catch (NullPointerException e) { System.out.println(e); } } } 用户成功登录后: protected void onActivityResult ,Toast.LENGTH_SHORT).show(); } } 问题是,onResume()在onActivityResult()之前被调用,所以当用户成功登录时,我的主活动不会得到通知,因为首先调用

    46510编辑于 2022-08-26
  • 来自专栏程序员开发工具

    Android Fragment 的妙用 - 优雅地申请权限和处理 onActivityResult

    使用 Fragment 封装权限申请 使用 Fragment 优雅处理 onActivityResult Activity reCreate 的时候用来存储数据 这篇文章主要讲解以下内容 使用 Fragment 封装权限申请 使用 Fragment 优雅处理 onActivityResult 当然,这些封装,网上都有相应的开源库了, RxPermission, EasyPermision, RxActivityReslut ---- 使用 Fragment 优雅处理 onActivityResult 我们先来看一下没封装之前 onActivityresult 的处理方式 我们先来看下正常情况下启动 Activity 和接收回调信息的方式 onActivityResult 都在同一个 activity 处理,如果这种方式特别多的话,我们要写一大堆的 if else,代码可读性大大较低,也不是很优雅。 在 onActivityresult 里面根据 requestCode 找到相应的 callback,并进行相应的回调。

    2.4K30发布于 2019-01-16
  • 来自专栏Android干货

    关于相机拍照获取图片onActivityResult返回data 为null的问题

    startActivityForResult(intent, REQUEST_CODE_CAMERA); } 相机拍摄后的回调如下: @Override public void onActivityResult (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode

    2.7K20发布于 2018-10-15
  • 来自专栏程序员修炼之路

    Fragment中调用startActivityForResult的那些坑

    调用,当前的Fragment的onActivityResult,和父Activity的onActivityResult都会调用 用getParentFragment发起调用,则只有父Activity和父 Fragment的onActivityResult会被调用,当前的Fragment的onActivityResult不会被调用。 这里2和3的前提是如果父activity中重写了onActivityResult,父Activity的onActivityResult中必须添加super.onActivityResult() 总结起来就是 这里就有一个问题需要注意了,我们一般都会覆写父Activity中的onActivityResult方法,这个时候我们必须在onActivityResult方法加上super.onActivityResult 方法没有调用super.onActivityResult()方法而导致Fragment中死活接收不到onActivityResult的回调。

    2.3K10发布于 2019-07-15
  • 来自专栏码客

    Android 调用系统相机 返回图片模糊的解决办法

    MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(camera, CAMERA); 回调 @Override protected void onActivityResult (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, { super.onActivityResult(requestCode, resultCode, data) if (requestCode == CAMERA && resultCode (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, { super.onActivityResult(requestCode, resultCode, data) if (requestCode == PHOTO && resultCode

    2.3K20发布于 2019-10-22
  • 来自专栏用户6093955的专栏

    Android Activity之间的数据传递【转载】

    Activity使用 startActivityForResult() 开启目标Activity后,当目标Activity销毁时,会向上一级Activity回传数据,并回调上一级 Activity的 onActivityResult 我们需要重写上一级Activity的 onActivityResult() 方法获取回传数据。 //重写上一级Activity的onActivityResult()方法来获取目标Activity回传的数据 //三个形参,请求码、结果码、目标Activity回传的Intent @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { //调用基类的方法,此句代码会自动生成 super.onActivityResult(requestCode, resultCode, data); if(requestCode==1){ //如果请求码是当前Activity

    1.4K20发布于 2020-12-09
  • 来自专栏andy的小窝

    一个类似微信图片选择加载控件(以适配安卓6.0以上)

    selectedPhotoNum",adapter.getItemCount()); intent.putExtras(bundle); startActivityForResult(intent,10); 在onActivityResult () @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); Log.i("Alex","mainActivity的onActivityResult

    56130发布于 2020-02-12
  • 来自专栏程思阳的专栏

    Android开发新手——第三方遇到的坑

    同时文档也说了,qq分享呢也必须要带上图片,不然会分享失败 注意: 最后在分享所在的Activity里复写onActivityResult方法,注意不可在fragment中实现,如果在fragment 中调用分享,在fragment依赖的Activity中实现,如果不实现onActivityResult方法,会导致分享或回调无法正常进行 @Override protected void onActivityResult (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode , data); UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data); } 然后我写完之后

    27420编辑于 2022-01-10
  • 来自专栏BaronTalk

    Android WebView那些坑之上传文件

    startActivityForResult(Intent.createChooser(i, "Image Chooser"), FILE_CHOOSER_RESULT_CODE); } 最后我们在onActivityResult 代码如下: @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult } } PS:ValueCallbacks是WebView组件通过openFileChooser()或者onShowFileChooser()提供给我们的,它里面包含了一个或者一组Uri,然后我们在onActivityResult true; } }); 大家应该注意到onShowFileChooser()中的ValueCallback包含了一组Uri(Uri[]),所以针对5.0及以上系统,我们还需要对onActivityResult (int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode

    3.2K60发布于 2018-04-13
  • 来自专栏tea9的博客

    Activity--startActivityForResult()-返回数据给上一个活动方法记录

    RESULT_CANCELED setResult(RESULT_OK, intent); finish(); } }); 在FirstAcitvity中重写onActivityResult 方法 FirstAcitvity.class protected void onActivityResult(int requestCode, int resultCode, Intent data) String returnedData = data.getStringExtra("data_return"); Log.d(TAG, "onActivityResult

    75430编辑于 2022-07-16
  • 来自专栏老欧说安卓

    Android开发笔记(一百六十六)H5通过WebView录像上传

    ;         //开启摄像机         startActivityForResult(intent, VIDEO_REQUEST);     } 在摄像机页面录像结束,返回到上一页时回调onActivityResult 方法,所以需要重写上个页面的onActivityResult方法,在该方法中把摄像结果传给h5网页。 下面是回传视频的处理代码:     @Override     protected void onActivityResult(int requestCode, int resultCode, Intent data) {         super.onActivityResult(requestCode, resultCode, data);         Log.d(TAG, "onActivityResult null : data.getData();             Log.d(TAG, "onActivityResult path="+result.getPath());            

    1.5K20发布于 2019-01-18
领券