gpt4 book ai didi

java - 如何声明 int 变量对我的所有方法都可见?

转载 作者:行者123 更新时间:2023-12-01 14:42:15 25 4
gpt4 key购买 nike

我有一个游戏,开始int值point = 100;随着游戏的进行,每次点击按钮后该值都会减少,直到游戏结束。我在使用 switch 的 onClick 方法中对点进行了子跟踪。游戏结束后,我在第二轮再次重新加载游戏方法,这是我的问题。如果我将该 int 变量设置为实例变量,它将在第一轮结束后保留​​其值,并且我需要从 100 重新开始。如果我将其声明为局部变量,则使用 Intent 调用另一个 Activity 并发送最终积分值的方法将没有看到这个变量。怎么解决这个问题?

所以,我声明一些变量:

int numberPointsGame = 100;
static int numberPointsTotal;

现在,在我的 onClick 方法中,我设置了一些文本并对这些点进行了子跟踪:

public void onClick(View v) {

switch(v.getId()){

case R.id.bA1:
numberPointsGame = numberPointsGame - 5;
a1.setText(mA1);
break;
case R.id.bA2:
numberPointsGame = numberPointsGame - 5;
a2.setText(mA2);
break;

现在,如果用户输入正确的答案,我会将该点放置在另一个实例变量中,然后将其发送到另一个弹出 Activity ,然后重新加载第一个 Activity 并再次执行该操作。

if (ukucanRezultatStrK.equals(konacanNormalized)){
konacnoResenje.setText(mKonacno);


Intent i = new Intent(Asocijacije.this, Popup_asocijacije.class);
i.putExtra("brojPoenaPrimljeno", numberPointsGame);
startActivity(i);

mHandler.postDelayed(mLaunchTask,3700);

numberPointsTotal = numberPointsTotal + numberPointsGame;

setResults();


}else{
Toast.makeText(Asocijacije.this, "Wrong answer!", Toast.LENGTH_SHORT).show();
}

第二次重新加载后,当游戏结束时,我进入主菜单并将最终结果(两个游戏结果的总和)设置为按钮。我总是得到 0。这是主要问题。

Intent i = new Intent(getApplicationContext(), Izbor.class);
i.putExtra("numberPointsGame", numberPointsTotal);
startActivity(i);

和我的主菜单类:

int numberPointsGame;
int score = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.izbor);

addListenerOnButton();

Bundle extras = getIntent().getExtras();
if(extras !=null) {
score = extras.getInt("ukupnoAsocijacije", 0);
}
}

private void addListenerOnButton() {

poeniAso.setText("" + score);

}

最佳答案

I reload game method once more...

您可以有一些初始化代码可以用于此目的...在游戏开始之前准备所有必要的字段:

public class Game
{
private int myCounter;

public void initialize()
{
this.myCounter = 100;
//initialize canvas, connections, etc.
}
}

或者,只需在代码中添加一个 reset() 方法,该方法会在游戏重新开始之前调用。

关于java - 如何声明 int 变量对我的所有方法都可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15835787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com