安卓onActivityResult未被调用问题

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode== Activity.RESULT_OK) {
if (requestCode == 1 ||requestCode == 2) {
Toast.makeText(this,"成功返回",Toast.LENGTH_SHORT);
System.out.println(" 成功返回 ");
图片说明

                            两个acticity如图  但最后跳转后却没有值
                            ![图片说明](https://img-ask.csdn.net/upload/201804/16/1523889663_393023.png)
0

6个回答

假设你需要A页面跳转到B页面,B页面执行后将结果返回到A页面。A页面startActivityForResult(intent, 0),再重写onActivityResult接受来自B页面的数据,
B页面调用setResult(RESULT_OK, intent); finish(); 后返回数据,setResult()在源码中是在调用finish()之前才被调用的,所以一定要调用finfish();**

0
0

Activity A使用startActivityForResult进行跳转到Activity B, Activity B执行了setResult ,但是这个不会立刻回调到Activity A的onActivityResult,只有Activity B被销毁了才会

0

兄弟,界面A跳到,在A中写startActivityforResult(),在B中结束逻辑业务后写setResult(),你的项目结构怎么都写一个文件夹,初学?

0

A--->B startActivityForRespult(intent,code)
B--->A setResoult(RESULT_OK) inish();

0

AActivity--->startActivityForRespult(intent,code) ----- to---->BActivity
BActivity ---->setResoult(RESULT_OK) ---->BActivity.finish()----->to---->AActivity
AActivity---->onActivityResult----->code 获取数据

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的。是时候展现真正的技术了!
其他相关推荐
Android的onActivityResult不被调用的解决方案
方案一: 现象: startActivityForResult() 后直接调用 onActivityResult()。 开发人员都知道,可以通过使用 startActivityForResult() 和 onActivityResult() 方法来传递或接收参数。 然而在一次使用中,还没等到被调用的 Activity 返回,onActivityResult() 就被执行了。 找了半
关于vivo等部分机型onActivityResult不执行问题
今天测试又提了个bug,说vivo X5SL(Android4.4)手机选择相册图片点完成直接返回上一页,而不走图片上传方法。跟debug发现是onActivityResult方法没有执行,百度一下直接找到原因,这与Android的launchMode有关。原先将其设为 launchMode=”singleTask”,经测试,所有需要传递或接收的 Activity 不允许设置该属性,或只能设为标准模
Android的Fragment中onActivityResult不被调用的最终解决方案
摘自:http://www.myexception.cn/android/1908553.html Fragment中的onActivityResult不被调用,有几种情况,请大家一一排查。   1.检查该Fragment所属的Activity中,是否重写了onActivityResult方法。 如果是该种情况,请确保写了super.onActivityResu
Android开发关于onActivityResult()的执行时间问题
当我们调用startActivityForResult()方法来跳转页面的时候需要重写onActivityResult方法,不然就和startActivity没什么两样,本文说明onActivityResult方法会在什么时候回被触发。这里我们用一段小程序来说明public class MainActivity extends Activity { @Override protected v
Android调用系统的裁剪后,无法响应onActivityResult()
我的问题是在乐视1s上面,很奇怪的有的图片可以,有的就是不可以,debug很久以为是intent里面的参数变量不一样了,最后debug到没有调用哦你ActivityResult(),搜到大神的一篇文章,解决了,记录下来以便温故而知新。rn转载自:http://blog.csdn.net/eclothy/article/details/42719217rnrnrnrnrnrn选择相册图片(或调用Me
华为手机onActivityResult()方法不执行问题
华为手机onActivityResult()方法不执行,debug的时候发现由ActivityA启动到ActivityB时竟然执行了A中的onActivityResult,返回时没有执行,查资料发现是因为ActivityA启动模式为singleTask导致的,删掉即可。
安卓开发没有关闭界面就调用了onActivityResult方法?onActivityResult方法Intent-data总是null
开发是遇到一个问题,在一个Activity的启动模式是单一实例的时候(AndroidManifest.xml中对Activity的launchMode设置),这样设置的话,会在调用startactivityforresult方法后直接调用onActivityResult方法里边的东西,自然你的intent也就没有了,是null的了,都没有返回。  最后附上Activity页面跳转时候的方法调用
Android调用系统相机onActivityResult返回参数data为null
一般调用系统相机的代码: filePath = ImageUtil.getCacheFilePath(this, StaticValue.PHOTO_PROTOCOL_ENTRUST); File file = new File(filePath); Intent intentFromCapture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Android的Fragment中onActivityResult不被调用的解决方案(绝对管用)
常见的,我们会在FragmentActivity中嵌套一层Fragment使用,甚至Fragment下层层嵌套使用。这个时候,在第二级或者更深级别的Fragment将无法收到onActivityResult回调,这是一个绝对管用的解决方案
android 调用系统相机或者系统相册功能时,onActivityResult方法不执行问题的解决过程
我的情况:我自定义了一个Activity继承自FragementActivity,在里边使用一下代码nnnnIntent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);nstartActivityForResult(intent,4050);nn启动系统相机功能。但是,当返回当前Activity时,系统并没有调用onActiv
关于onActivityResult方法不执行的问题汇总
首先说说本人碰到的于onActivityResult不执行的情况。(网上找了很久都没有人碰到) 1.直接上代码说明 ActivityA的代码:(放在onCreate方法中) [java] view plaincopyprint? Intent intent = new Intent(ActivityA.this, ActivityB.cl
安卓开发中遇到的Intent的startActivityForResult方法回调后不执行onActivityResult方法
今天在使用startActivityForResult方法时,发现代码跟网上别人的一模一样,但就是死活不执行onActivityResult方法,改来改去,浪费了好多时间,最后发现是因为在AndroidManifest.xml中把目标Activity的android:launchMode设置成"singleTask"导致的(习惯性),改为"standard"就好了。 --------------
解决onActivityResult方法不执行的办法
最近在开发公司项目,在使用startActivityForResult关联俩个Activity中,发现A跳转到B,B设置setResult之后,A没有执行onActivityResult,查找一下,发现是A,B之前的启动模式都使用singleTask,查找下相关问题。 总结下出现问题和解决办法: 如果Activity 的加载启动模式(launchMode )是SingleTask或者 ,会导
Android中Fragment中onActivityResult不被调用的解决方案
android开发中,Fragment+ViewPager已经很常见了。其实遇到这个问题,其实挺尴尬的,我相信有很多小伙伴都遇到这个问题。我也在网上找了很多资料,说什么是android原生的问题,程序员偷懒了,没有处理这个事件分发等。 指钱看过这位仁兄的文章,试了试,可惜不管用。提示getParentFragment();为null 哎……放弃了。     然后我看到一个方法,但是很抱歉,忘
解决android调用系统相机拍照保存时onActivityResult中data为null的问题
调用系统相机照相的代码: boolean isNull=false;//判断照相机返回数据是否为空 Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE"); File file = new File(Environment.getExternalStorageDirectory()
解释 Android 调用系统相机,在onActivityResult中接收的data为null的原因
很多时候,我们在使用程序调用系统相机的时候,会发现在onActivityResult中接收的data为null,开始我也一直不明白,这是为什么,后来查看了源码才知道,今天在这记录一下,方便以后忘了。哈哈。 下面这个方法是我调用系统相机的方法,其中红色标记的方法是设置拍照后相片保存的地址。 /** * 设置一些参数 * */ private void takePhoto ()
开发中遇到Fragment中onActivityResult不响应的问题,
开发中遇到Fragment中onActivityResult不响应的问题,曾经见过。 不少同学说处理方法是在与Fragment绑定的FragmentActivity中重写onActivityResult方法。返回的result先传至Fragment的host FragmentActiivity。这个FragementActivity的onActivityResult函数必须调用 super.onA
调用startActivityForResult后onActivityResult立刻响应,返回当前页onActivityResult不响应的问题
这个问题开发中还是很常碰到,整理出来。 原因是在AndroidManifest.xml中跳转的activity设置了android:launchMode="singleTask",因为需要传值的 Activity 不容许设置该属性或者 singleInstance,或只能设为标准模式,不然将在 startActivityForResult()后直接调用onActivityResult()。 S
Activity的生命周期函数、onActivityResult、intent和启动模式的调用关系
将activity的启动模式和intent传值问题进行了总结和思考
Android:关于onActivityResult方法不执行的问题
onActivtyResult这个方法是一个回调方法,是在我们通过startActivityForResult()启动activity时,finish()后所执行的,经常能够满足我们回调的需求,但是在使用过程中,由于一些非常细节的原因而导致了这个方法没有执行。下面是我所遇到的两种情况:rnrnrn1、如果startActivityForResult此处写的RESULT_OK是负数的话,则在fini
调用系统相机照相,照完后没有调用onActivityResult
我碰到的一个这样的问题,其他手机机型没有问题,魅族MX2就是不行。
fragment中onActivityResult无法返回和在startActivityForResult调用后立即调用解决办法
以前都只是在activity中使用startActivityForResult和onActivityResult方法
解决Fragment多层嵌套时onActivityResult无法正确回调的问题
Fragment也可以使用startActivityForResult方法去打开一个Activity,然后在其onActivityResult方法中处理结果,可是当Fragment嵌套的时候,由于FragmentActivity的BUG导致只会回调最外那层Fragment的onActivityResult方法,于是乎当前Fragment就收不到结果了。我们先从Fragment的startActivi
Fragment中onActivityResult不响应的解决办法
/*在fragment的管理类中,我们要实现这部操作,而他的主要作用是,当D这个activity回传数据到 这里碎片管理器下面的fragnment中时,往往会经过这个管理器中的onActivityResult的方法。*/ protected void onActivityResult(int requestCode, int resultCode, Intent data) { s
****有关onActivityResult提前调用的问题(转)
http://www.cnblogs.com/cottychiu/p/3262328.html 一、 今天准备在自己的游戏中加入蓝牙功能,于是将Android SDK Sample中的BluetoothChat看了看,发现基本上大部分的代码都可以复用,于是乎乾坤大挪移了一番,总算没有错误了,可是在我的Nexus上一运行,悲剧了,蓝牙明明打开了,可是却不能进入到DeviceListA
fragment扫描二维码之onActivityResult()接收扫描返回值(1)
关于fragment适用二维码接收返回消息时的OnActivityResult()不能收到返回值的方法。
Android实现intent跳转界面传递数据(2)——onActivityResult方法接收返回值
Android实现intent跳转界面传递数据,onActivityResult方法接收返回值
Android中选取文件后在onActivityResult中将intent中的Uri转换成文件的路径
public static String getPath(Context context, Uri uri) { if ("content".equalsIgnoreCase(uri.getScheme())) { String[] projection = {"_data"}; Cursor cursor = null;
onActivityResult获取相册中相片的地址
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // //添加一张新的图片
Xamarin.Android 调用手机拍照功能
  最近开发Android遇到了调用本地拍照功能,于是在网上搜了一些方法,加上自己理解的注释,在这儿记录下来省的下次用时候找不到,同事也给正在寻找调用本地拍照功能的小伙伴一些帮助~   实现思路:首先加载-->判断是否具备拍照功能-->创建图片目录(文件夹)-->点击拍照事件-->返回图片并绑定在控件上显示。 引用命名空间: using System; ...
android onActivityResult()接收返回数据为null的解决方案
对于·app多个界面管理,如果一般使用Activity默认的加载模式,按返回键就会退回上一次操作,就是一种新建一个Activity实例。时间长了就会变得卡顿,一般人会选择手动地在代码中屏蔽返回键,使用app中开发的返回键,这样也可以解决问题。           但是本质问题还是没解决,不可能以后开发也用这样的方法,用多了也烦躁。所以解决这个问题的关键在于了解Activity的加载模式。  
startActivityForResult调用后立即响应了OnActivityResult()方法,导致setResult()后无响应
在做demo时候遇到startActivityForResult调用后立即响应了OnActivityResult()方法,导致setResult()后无响应OnActivityResult(); 查看了源码后,分析各种原因,刚开始认为是setResult调用的时间出现了问题,解释一下调用时间顺序: 1、在A中startActivityForResult启动B Activity; 2、B中处理
android 进行拍照操作时对 onActivityResult()的封装隔离
在进行调用相机拍照功能时,需要使用到 startActivityForResult 和 onActivityResult 在实际使用时还是略微有些繁琐,比较理想的状态应当是屏蔽拍照、截屏等处理细节,调用拍照功能的Activity页面只需要调用拍照方法并获得照片路径即可 即:如  getPhoto(params , callback(){ onImageInfo(String imageP
是时候干掉onActivityResult了
两个冤家,handler与onActivityResult安卓中有两个我们常用,但写起来非常不爽的代码。一个是handler,另一个就是onActivityResult了。他们非得让我们都整一个常量,而且看代码时请求和处理逻辑之间跳来跳去。一个字,晕。 我们知道handler大部分用在网络请求上,至于去掉可以看我以前的文章安卓项目易用Ohttp封装,当然这个网络请求封装很多。但对onActivit
调用android的Camera 执行结果没有回调onActivityResult()
我调用android系统的 camera : Uri uri = Uri.fromFile(new File(imagepath)); Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); mactivity.star
执行setResult后的回调顺序
A ——> startActivityForResult ——> B ——>setResult 不执行finish 方法  A是在B执行了setResult方法还是B被finish后执行onActivityResult方法? A ——> startActivityForResult ——> B ——>setResult ——> finish 如果栈里面A和B中间还有activity  A将不会在
onActivityResult 不调用的问题
先简单描述下, 做手势密码功能的时候,当用户创建手势密码成功后,acitivty调用setResult(OK)并且  finish  了,此时,手势密码管理界面的手势密码开关应该处于打开状态,可是却发现onActivityResult  方法根本不走, 细想下发现,在manifest中将该手势密码界面的 launchmode设置为 sigleTask了,去掉之后就成功执行了.  记录下.rn   
onActivityResult在Fragment没有回调的解决方法
今天遇到了一个问题,就是我在 Fragment 中调用了 startActivityForResult 启动一个 Activity ,但是在回来的时候 Fragment 中的 onActivityResult 却没有回调,上网查了一下,大家的解决方法都说是Fragment中直接调用 startActivityForResult 而不是调用getActivity().startActivityFor
再也不需要onActivityResult了。使用响应式解决startActivityForResult和onActivityResult回调繁琐的问题
每次我们使用startActivityForResult方法时,如果需要接收返回的结果,总得在onActivityResult中进行处理。 学习了RxJava以后,体验到了操作符的便捷。因此尝试着解决上述问题。 原理很简单,看过后即可明白。精髓之处在于借助fragment来完成。不啰嗦,直接上代码: https://github.com/HowardChenhaoyang/RxAct
ARouter路由框架不回调onActivityResult的问题
阿里巴巴的ARouter框架真的是好用,基本可以满足项目的跳转需求,而且使用简单,github地址:https://github.com/alibaba/ARouter但是我在使用的时候却遇到了一个问题,需求:需要调用navigation(Activity activity,int RequestCode)方法代替传统的StartActivityForResult方法,在onActivityRes...