gpt4 book ai didi

java - Android:如何保存游戏中的最好成绩?

转载 作者:行者123 更新时间:2023-12-01 17:55:38 25 4
gpt4 key购买 nike

我是一名初学者程序员,我为 Android 创建了一个游戏,我遇到了一个问题,我想在完成游戏后向我展示我在玩这个游戏时取得的最佳成绩,我提出了一个条件

if(DOD> sharedPreferences.getInt("DOD_SHA",0));

当然,我在这里使用sharedPreferences来保存最好的分数,但是这个条件根本不起作用,我的sharedPreference采用任何值,甚至小于最后的分数

public class EndScreen extends AppCompatActivity {

TextView Levelwys,war;
Button GotoMenu;
int DOD,ODE,MNO,PIE,DZI,POT,SIL,LOG;
SharedPreferences sharedPreferences;
SharedPreferences.Editor editor;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_end_screen);

Levelwys = findViewById(R.id.textView15);
war = findViewById(R.id.textView19);
GotoMenu = findViewById(R.id.button);
sharedPreferences = getSharedPreferences("com.example.goodmath", Context.MODE_PRIVATE);
editor = sharedPreferences.edit();

Intent intent = getIntent();
int number = intent.getIntExtra(GameSingleActivity.LEVEL, 0);
DOD = intent.getIntExtra("DOD", 0);
ODE = intent.getIntExtra("ODE", 0);
MNO = intent.getIntExtra("MNO", 0);
PIE = intent.getIntExtra("PIE", 0);
DZI = intent.getIntExtra("DZI", 0);
POT = intent.getIntExtra("POT", 0);
SIL = intent.getIntExtra("SIL", 0);
LOG = intent.getIntExtra("LOG", 0);
Levelwys.setText(String.valueOf(number));
String test = String.valueOf(DOD);
Toast.makeText(getApplicationContext(), test, Toast.LENGTH_LONG).show();
Save();

GotoMenu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
GotoMenu();
}
});
}
@Override
public void onBackPressed() {

}

void GotoMenu()
{
Intent intent1 = new Intent(this, MenuActivity.class);
startActivity(intent1);
}

void Save()
{
if(DOD> sharedPreferences.getInt("DOD_SHA",0));
{
editor.putInt("DOD_SHA",DOD);
editor.apply ();
editor.commit();
Toast.makeText(getApplicationContext(), "cos", Toast.LENGTH_LONG).show();
war.setText(String.valueOf(sharedPreferences.getInt("DOD_SHA",DOD)));
}
}

}

最佳答案

您的 if 条件中有拼写错误:

if(DOD> sharedPreferences.getInt("DOD_SHA",0));

您在此行末尾添加了额外的分号。因此,总是调用低于此条件的代码。删除这个分号,一切都会正常工作:

if(DOD> sharedPreferences.getInt("DOD_SHA",0))
{
editor.putInt("DOD_SHA",DOD);
editor.apply ();
editor.commit();
Toast.makeText(getApplicationContext(), "cos", Toast.LENGTH_LONG).show();
war.setText(String.valueOf(sharedPreferences.getInt("DOD_SHA",DOD)));
}

关于java - Android:如何保存游戏中的最好成绩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60722858/

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