onActivityResult中resultCode老是等于0

By | 12月02日
Advertisement

今天在项目发现,我在onActivityResult等返回resultCode总是0,想不通,更奇怪的在乐视1s手机上,却可以正常返回resultCode,在三星GT-N7100上不行,老是resultCode=0,同样的代码,在两个不同手机出现不一样的结果,反正不是我想看到的,最后网上找了些资料看了下,是和acitivty的launchMode有关,我两个activity   A和B,都是launchMode=singleTask;A跳转到B,我把B的模式取掉,也就是standard模式(默认
),运行后,结果resultCode返回预期的数据了,最后测试下,发现:

1 B在standard、singleTop两个模式下,在A中startActivityForResult()后,onActivityResult方法会在Activity B结束掉之后被调用

2 B在singleTask、singleInstance两个模式下,在A中tartActivityForResult()后,onActivityResult方法会立即调用,等到在Activity
中setResult的时候,就不再起作用了,导致老是resultCode=0,也就是 setResult失效

在使用startActivityForResult的时候,注意setResult
的activity启动模式只要为standard、singleTop就行。

Similar Posts:

  • 关于Oracle中的不等于号

    关于Oracle中的不等于号: 在Oracle中, <> != ~= ^= 都是不等于号的意思.都可以使用. 但是奇怪是的, 我想拿出providerid 不是180000的商品时:(providerid 是Number类型的) SELECT id, name FROM product where providerid <> 180000; 执行这个语句时,providerid is null 的记录不出来.也就是拿不到providerid 是null的商品.必须使用: SELEC

  • 关于一些手机无法获取onActivityResult()中的intent

    在一些手机上,如拍照时的上下文传递的intent时,就无法从传过来的intent中获取bundle的值,就无法显示bitmap 这是我们就可以通过if语句这么处理,直接看demo private void saveFullImage() { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); // 文件夹aaaa String path = Environment.getExternalStorageDirectory().t

  • 我的疑问:计算机怎么感知-128等于-0的?

    我的疑问:计算机硬件怎么感知-128等于-0? 以下面的程序入手分析: int main() { char a[1000]; int i; for(i=0; i<1000; i++) { a[i] = -1-i; } printf("%d",strlen(a)); return 0; } 分析上面的程序:a[i]=-1,-2,-3,-,-254,-255-,但是,这些数在计算机内部是怎么存的? 大前提是(char的默认状况是存的有符号数,并且数据在计算机内部是以补码的形式存的)

  • 我的疑问:计算机硬件怎么感知-128等于-0?

    我的疑问:计算机硬件怎么感知-128等于-0? 以下面的程序入手分析: int main() { char a[1000]; int i; for(i=0; i<1000; i++) { a[i] = -1-i; } printf("%d",strlen(a)); return 0; } 分析上面的程序:a[i]=-1,-2,-3,-,-254,-255-,但是,这些数在计算机内部是怎么存的? 大前提是(char的默认状况是存的有符号数,并且数据在计算机内部是以补码的形式存的)

  • 100-1为什么要等于0“心情”

     生活就是一团乱麻,油盐酱醋混在一起都分不出任何味道.为什么日子过得么这累,为什么没有一个人能理解我,为什么没有人能够在背后助我一臂之力. 创业艰苦都是必然的,为什么不能分享创业的快乐呢?而中中享受这个过程呢?我是普普通通的人而不是神,全天下所有人创业并不都是一帆风顺的.男人在这个过程中,往往需要得到的是什么呢?并不是你对我的工作上的帮助,生活上的帮助.其实这些你都做得不够,但我不怪你.在生活上我也没有很好的关心过你,但是必须要明白最终我是为了什么? 时不时在朋友或亲人面前夸夸我怎么怎么好,

  • Ubuntu 11.10中安装fcitx 4.0.1版本小企鹅输入法

    Ubuntu 11.10中安装fcitx 4.0.1版本小企鹅输入法 最新版本的Ubuntu 11.10 于昨天正式发布了,今天抽空将机器上的系统换成了最新的版本了,遇到第一个问题就是配置Fcitx的五笔拼音输入法. 首先通过官方源安装Fcitx,默认已经是Fcitx4.0.1版本了,命令如下: sudo apt-get install fcitx 重启X后,通过Ctrl+Space可以调出来输入界面,可意外的是只鹅拼音输入和双拼,急煞我也,后来通过官方网站得知,这个版本的Fcitx已经不默认安

  • Jquery 结合 easyUI 实现 当选择框中的值等于某一个值的时候,另一个combobox中的值发生变化。

    Jquery 结合 easyUI 实现 当选择框中的值等于某一个值的时候,另一个combobox中的值发生变化. $('#AccType').combobox({ onChange:function(){ if ($('#AccType').combobox('getValue')=="CCA"){ //假如账户类型文本框中的值等于公司结算账号 $("#YesNo_sfczfzhgl").combobox({readonly:"readonly"

  • WIN 7 64位环境中配置vs2015+opencv3.0

    转载出处:WIN7 64位环境中配置vs2015+opencv3.0 Visual Studio 2015官方下载 微软刚刚为开发人员奉上了最新大礼Visual Studio 2015正式版.如果你是MSDN订阅用户,现在就可以去下载丰富的相关资源.如果你指向体验一把尝尝鲜,微软也是很慷慨的. Visual Studio官网已经开放了新版的全面下载,包括英文.简体中文.日文等十种语言和十四种语言包(但是没繁体中文),包括软件的各个版本,包括在线安装包和ISO独立安装镜像. 以下是部分ISO镜像下

  • ABAP 中给字段补0 的处理代码

    ABAP 中给字段补0 的处理代码,如 Customer table: VNA1 的 customer number: kunnr的字段长度规定是 10 位,那么我们就要对其进行动态的补 0 e.g Kunnr: 1031 1031-->0000001031 Kewword: CONCATENATE 用法:CONCATENATE ZEROCUST_NOINTO CUST_NO. ZERO为要补的内容 CUST_NO补给的对象 INTO CUST_NO 最终合并的对象 *-------------

  • 在Ubuntu 10.04中安装MyEclipse 8.0与配置

    在Ubuntu 10.04中安装MyEclipse 8.0与配置 最近打算把开发环境换到Linux平台,刚脆就搬到新装的Ubuntu 10.04中. 新的Ubuntu系统中去除了sun的jdk,取而代之的是OpenJDK,但这个并不适合用来开发. 首先在新立得中搜索openjdk全部删除.并添加软件源来安装sun-java6-jdk root@ubuntu:~# add-apt-repository "deb http://archive.canonical.com/ lucid partner

Tags: