获得额外的意图和onCreate方法?

use*_*202 8 android android-intent oncreate

我有A,B和C类.A类向B发送意图,B运行C,C返回B ......但是然后在B类的onCreate内部它想要A类的意图.但是因为它来自C级它没有得到它,但我仍然需要A级的意图

有关如何绕过这个的任何想法?我想一个解决方案可能是将extra.getString存储在数据库或类似的地方?

Bundle extras = getIntent().getExtras();
 newString = extras.getString("ID"); 
Run Code Online (Sandbox Code Playgroud)

Hoa*_*yen 6

由于我不确切知道您的活动流程,这是一个解决方案,但可能不合适.

当你开始新的活动时,多加一点

intent.putExtra("ID_FROM_A", value); // except for ActivityA value = mIdFromA
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

关于接收活动

onCreate()
{
    mIdFromA = getIntent().getStringExtra("ID_FROM_A");
}
Run Code Online (Sandbox Code Playgroud)


Nei*_*end 2

所以如果我没猜错的话:

活动一:

  • 创建intentAtoB
  • 开始活动 B

活动B

  • 接收intentAtoB
  • 创建意图BtoC
  • 开始活动 C

活动C

  • 接收意向BtoC
  • 做某事

现在:活动 C 是否:

  1. 使用 finish() 返回到 Activity B,或者

  2. 再次启动活动 B?

如果为 1,当您返回 Activity B 时,它仍将保留您首次创建时设置的所有内容。因此,您需要从 B 的 onCreate 中的 Intent 中提取所有内容。

如果是 2,您只需要在用于启动每个活动的意图中将信息沿着链传递即可。

如果您能够(a)确认顺序是什么并且(b)澄清为什么上述行不通,我相信我们可以继续前进。