创建刽子手游戏时遇到问题。我对android很陌生,只做了一个星期,但现在我陷入了真正的困境。我每次都在同一个地方丢失一个 int 变量的值。它是变量 antallGjett(猜测的平均数)。我在那里的图像视图中有图片,第一个设置为零。第一次没问题,图像改变了。但是下一次,什么都没有发生。在第二次未命中时它永远不会更改为图像“hang2”,但在第三次未命中时它会继续前进。但是,计数器在图像 nr 5 处仍然具有值 6。方法如下:
public void klikkKnapp(char[] c, Button bokstav, char[] l, char[] gjettetOrd) {
boolean bol= sjekkBokstav(c, bokstav, l, gjettetOrd);
if(bol== false) {
if(antallGjett>= 6)
antallGjett= 0;
++antallGjett; //number of guesses
String pakke= getApplicationContext().getPackageName();
image= getResources().getIdentifier(pakke+":drawable/hang"+ antallGjett+"", null, null); //
hangMan= (ImageView)findViewById(R.id.hengtmann);
if(hangMan.getId()== image) {
++antallGjett;
image= getResources().getIdentifier(pakke+":drawable/hang"+ antallGjett, null, null);
}
hangMan.setImageBitmap(BitmapFactory.decodeResource(getResources(), image));
}
if(antallGjett== 6)
showDialog(false);
else if(Arrays.equals(ord, gjettetOrd))
showDialog(true);
}
我有实现 onPause() 和 onResume() ,但它确实没有帮助。我的 onPause() 方法示例:
protected void onPause() {
super.onPause();
Context context = this.getBaseContext();
SharedPreferences sharedPref = context.getSharedPreferences("PREF_KEY", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt("antallGJETT", antallGjett); // value to store
// Commit to storage
editor.commit();
}
在这里 onResume:
@Override
protected void onResume() {
super.onResume();
Context context = this.getBaseContext();
SharedPreferences sharedPref= context.getSharedPreferences("PREF_KEY", MODE_PRIVATE);
an
tallGjett=sharedPref.getInt("antallGJETT", antallGjett); }
我已经阅读和阅读并尝试过,但我没有看到任何解决方案.. :(