当您不立即启动 activity 时,.getIntent() Bundle 是否有效?
Does a .getIntent() Bundle works when you don't initiate the activity right away?
这可能是一个菜鸟问题,但我一直在寻找关于它的一些解释,但未能找到。
我有 A.class 正在启动 activity (A)。
用户单击一个按钮,我们转到 B.class,这也会启动布局,我正在向 activity (B) 发送 putExtra("key",value)
。
我收到了,效果很好!
然后我想再次发送 putExtra("key",value)
返回给 activity (A),但是用户单击了另一个按钮我启动了 C.class 来执行他需要的后台任务。
当用户返回activity (A)时,getIntent().getExtras()
为空。
所以我的问题是,更改 类(线程)或活动会弄乱您的包吗?
有什么办法可以预防吗?
我觉得你很困惑。由 getIntent return 编辑的意图是启动您的 activity 的意图。它永远不会改变。如果你有一个 Activity A 想要启动 Activity B 并得到一个结果, Activity A 必须调用 startActivityForResult 来启动 B,并且 B 必须设置一个 new 意图被 returned,调用 setResult,然后完成。然后 onActivityResult in Activity A 将被调用,并通过 B 设置的结果。getIntent() 不会 return 任何结果。
这可能是一个菜鸟问题,但我一直在寻找关于它的一些解释,但未能找到。
我有 A.class 正在启动 activity (A)。
用户单击一个按钮,我们转到 B.class,这也会启动布局,我正在向 activity (B) 发送 putExtra("key",value)
。
我收到了,效果很好!
然后我想再次发送 putExtra("key",value)
返回给 activity (A),但是用户单击了另一个按钮我启动了 C.class 来执行他需要的后台任务。
当用户返回activity (A)时,getIntent().getExtras()
为空。
所以我的问题是,更改 类(线程)或活动会弄乱您的包吗? 有什么办法可以预防吗?
我觉得你很困惑。由 getIntent return 编辑的意图是启动您的 activity 的意图。它永远不会改变。如果你有一个 Activity A 想要启动 Activity B 并得到一个结果, Activity A 必须调用 startActivityForResult 来启动 B,并且 B 必须设置一个 new 意图被 returned,调用 setResult,然后完成。然后 onActivityResult in Activity A 将被调用,并通过 B 设置的结果。getIntent() 不会 return 任何结果。