关于startActivityForResult的问题

[Question]

使用startActivityForResult,并没有启动设置中的activity,而是直接调用了onActivityReslut()方法。

[Solution]

查看Androidmanifest.xml中关于要启动的activity的声明是否有 android:launchMode="singleTask",把这句话去掉就OK了

 [Analyse]

1、Activity 的加载模式(launchMode)有关,该属性可以在 AndroidManifest.xml 中设置。

2、将其设为 singleInstance,经测试,所有需要传递或接收的 Activity 不允许设置该属性,或只能设为标准模式,否则系统将在 startActivityForResult() 后直接调用

onActivityResult()。

3、另外,requestCode值 > 0,否则,startActivityForResult就变成了 startActivity(即 调用startActivityForResult后,onActivityResult无响应)

[Reference]

http://www.cnblogs.com/siemens_2128/archive/2011/06/23.html

原文地址:https://www.cnblogs.com/abnercai/p/3142040.html