Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java startActivityForResult启动新活动是否在启动的活动完成时通知调用活动?_Java_Android_Android Activity - Fatal编程技术网

Java startActivityForResult启动新活动是否在启动的活动完成时通知调用活动?

Java startActivityForResult启动新活动是否在启动的活动完成时通知调用活动?,java,android,android-activity,Java,Android,Android Activity,我在看一个Android问题,问下面的陈述是否属实 当使用startActivityForResult从活动类启动新的活动时,新的活动完成后,您的活动类会收到通知 我认为,startActivityForResult的全部目的是通知调用活动它启动的活动已完成,并允许在需要时返回数据 我对安卓系统比较陌生,我想把事实弄清楚 如有任何意见,将不胜感激 干杯 当startActivityForResult用于从您的 活动类,则当新的 活动已完成 这是真的,onActivityResult(int-re

我在看一个Android问题,问下面的陈述是否属实

当使用
startActivityForResult
活动
类启动新的
活动
时,新的
活动
完成后,您的
活动
类会收到通知

我认为,
startActivityForResult
的全部目的是通知调用活动它启动的活动已完成,并允许在需要时返回数据

我对安卓系统比较陌生,我想把事实弄清楚

如有任何意见,将不胜感激

干杯

当startActivityForResult用于从您的 活动类,则当新的 活动已完成

这是真的,
onActivityResult(int-requestCode,int-resultCode,Intent-data)
在活动中被调用,它为result启动了其他活动-覆盖它以处理结果

在我看来,startActivityForResult的整个要点是 通知调用活动其启动的活动已停止 已完成,如果需要,允许返回数据

这也是事实,您可以通过调用
setResult(int-resultCode,Intent-data)
-传递包含额外数据的意图数据-然后您可以从onActivityResult中的意图数据中检索它,从而在为result调用的活动中设置结果

当startActivityForResult用于从您的 活动类,则当新的 活动已完成

这是真的,
onActivityResult(int-requestCode,int-resultCode,Intent-data)
在活动中被调用,它为result启动了其他活动-覆盖它以处理结果

在我看来,startActivityForResult的整个要点是 通知调用活动其启动的活动已停止 已完成,如果需要,允许返回数据


这也是正确的,您可以通过调用
setResult(int-resultCode,Intent-data)
-传递包含额外数据的意图数据-在为result调用的活动中设置结果,然后您可以在onActivityResult中从意图数据中检索它。

为了安全起见,让我们进行
活动A
活动B

ActivityA
启动
ActivityB
时使用
startActivityForResult


ActivityB
完成它的工作并完成它<在
活动A

上调用code>onActivityResult,为了理智起见,让我们进行
活动A
活动B

ActivityA
启动
ActivityB
时使用
startActivityForResult


ActivityB
完成它的工作并完成它<当您希望被调用的活动将结果返回给调用活动时,请使用startActivityForResult。 调用活动必须实现onActivityResult才能获得有关结果的通知。 当被调用的活动完成其工作时,它调用setResult。 这只是在活动之间共享值的一种方式,与通知系统无关。
我希望我说得很清楚。

当您希望被调用的活动向调用活动返回结果时,可以使用startActivityForResult。 调用活动必须实现onActivityResult才能获得有关结果的通知。 当被调用的活动完成其工作时,它调用setResult。 这只是在活动之间共享值的一种方式,与通知系统无关。
我希望我说的很清楚。

干杯,感谢您的确认!干杯,感谢您的确认!所以你不相信初始语句是真的,因为
onActivityResult
是一个可选的方法,任何类型的“通知”都需要实现。我认为你只使用它是因为你想得到通知,这意味着这是一个真的语句,所以你不相信初始语句是真的
onActivityResult
是一种可选的方法,任何类型的“通知”都需要实现它?我认为您只会使用它,因为您希望得到通知,这意味着这是一个真实的声明