将int注入其他活动会导致奇怪的行为

时间:2014-05-01 19:35:12

标签: java android

我从ints传递3 MainActivitymain并将其显示在单独的Textviews中。当我单击按钮转到下一个活动时,它会显示上一个文本视图中的最后一个int。按智能手机上的后退按钮,它会将最后一个文本视图重置为0,并显示第二个文本视图的正确值。然后再次按下后退按钮,它会将第二个textview重置为0并显示第一个textview的正确值。

OnCreate的{​​{1}}方法内的代码:

MainActivity.java

Intent sendX = new Intent(MainActivity.this, main.class); sendX.putExtra("x", x); startActivity(sendX); Intent sendY = new Intent(MainActivity.this, main.class); sendY.putExtra("y", y); startActivity(sendY); Intent sendZ = new Intent(MainActivity.this, main.class); sendZ.putExtra("z", z); startActivity(sendZ); 的{​​{1}}方法内的代码:

OnCreate

1 个答案:

答案 0 :(得分:3)

您需要了解Intents的工作方式。你基本上是在同一个Activity的3个实例上启动的。这样做:

Intent intent = new Intent(MainActivity.this, main.class);
intent.putExtra("x", x);
intent.putExtra("y", y);
intent.putExtra("z", z);
startActivity(intent);

Intent intent = getIntent();
x = intent.getIntExtra("x", 0);
y = intent.getIntExtra("y", 0);
x = intent.getIntExtra("z", 0);