我有 3 个活动。假设A,B,C。主要活动是A。
我想从A开始B然后从B开始C,然后在C打开时关闭B。最后在 C 关闭时将数据传递给 A。
这怎么可能,尤其是 Intent 和 startActivityForResult?后两种方法完全有可能吗?
谢谢。
我有 3 个活动。假设A,B,C。主要活动是A。
我想从A开始B然后从B开始C,然后在C打开时关闭B。最后在 C 关闭时将数据传递给 A。
这怎么可能,尤其是 Intent 和 startActivityForResult?后两种方法完全有可能吗?
谢谢。
假设你正在使用一个按钮,当你点击按钮启动活动C时,你可以完成活动B,并得到活动A中的动作。
在活动 A 上使用 onActivityResult()。在此桥上,您可以使用 startActivityForResult() 启动活动 C。
这样,当您完成 C 时,您可以再次使用 onActivityResult() 将数据传递给 A。
Renan Lopes Ferreira 的回答成功了。干杯。
您始终可以使用 Intents 从 A 开始 B 和从 B 开始 C。当您从堆栈中删除 A 时,C 无法使用 startActivityforResult() 和 onActivityResult) 直接将数据传递给 A。(这不是很明显,A 甚至不存在于内存中)。所以为了让 A 访问 C 的数据,你必须将 C 的数据存储在某个地方,以便 A 可以在下次启动时访问它。现在,这里的另一种情况是将其存储为持久或非持久数据。如果您希望数据持久化,建议使用 Shared Preferences、Database 等,如果您希望它是非持久性的,则可以使用 Singleton 等。