【发布时间】:2017-03-20 14:26:53
【问题描述】:
所以我有两个活动,一个主要活动,一个次要活动,我们将它们称为活动_A(主要)和活动 B(第二个)。 所以我的 activity_A 正在获取一些数据,然后使用以下代码将其发送到 activity_B:
Intent i = new Intent(this,activity_B.class);
i.putExtra("Charge_Batterie", bat);
startActivity(i);
activity_B 使用此代码正确接收它:
String bat = getIntent().getStringExtra("Charge_Batterie");
我的问题是我的 activity_A 正在刷新它的值“bat”,所以当我有意发送它时,它不会在 activity_B 中刷新。 所以我想知道,我的活动_A 在睡觉吗?如果是,我怎样才能让它活着?
【问题讨论】:
-
Intents 有持久化数据。一旦设置,它将保持这种状态,直到再次明确设置。
-
如果您想扫描电池,最好使用服务。但如果它只是从活动 A 到 B 的一个值。为变量赋值应该还有另一个问题。
-
在我的 activity_B 中,我将使用来自 android.support.v4.widget.SwipeRefreshLayout 的 onRefresh() 方法。所以如果我在 onRefresh 中调用我的 getIntent,它会覆盖它吗?
-
不,Intent 是一次性容器。
-
所以唯一的方法就是“服务”。我会检查它是如何工作的并尝试去做。谢谢大家的回答。
标签: java android android-intent