【发布时间】:2016-02-12 04:01:36
【问题描述】:
我有两个活动。还有一个称为计数器的静态整数。
所以,如果我在活动“A”中按下一个按钮,那么counter = counter + 1。
这是活动 a 的代码:
public static int counter = 0;
cmdOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
counter = counter + 1;
if (counter == 5)
{
tagihan.txtShip1.setTextColor(Color.parseColor("#000000"));
tagihan.txtNilai1.setTextColor(Color.parseColor("#000000"));
tagihan.txtSupir1.setTextColor(Color.parseColor("#000000"));
}
}
这是来自活动 b :
cmdSuccess.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
a.counter = a.counter + 1;
if (a.counter == 5)
{
tagihan.txtShip1.setTextColor(Color.parseColor("#000000"));
tagihan.txtNilai1.setTextColor(Color.parseColor("#000000"));
tagihan.txtSupir1.setTextColor(Color.parseColor("#000000"));
}
}
我的问题是,当我尝试从活动中按下按钮 3 次时,它可以正常工作。所以现在的值为 3。
但是当我尝试按下活动 b 中的按钮时,该值将重新启动为 0。实际上我并没有破坏活动 a。
所以我想要的是,即使我从活动 a 或 b 按下,值也会持续变化。
有什么想法吗?
已编辑:
我已经编辑了代码。 Tagihan 活动是我试图完成的。所以当计数器为 5 时,tagihan 活动正在发生变化。
【问题讨论】:
-
在活动之间共享静态动态变量不是首选,因为您几乎无法控制活动生命周期。您要解决的问题是什么?
-
你必须展示这两个活动的完整来源。
-
如何将活动 a 的实例传递给 b 。你能展示一下吗?
-
我已经编辑了我的问题。请检查一下
-
您可以将其存储在 sharedprefrence 中,也可以将其存储在应用程序类中
标签: android android-activity static-members