0

我在主屏幕上有一个“继续”和一个“新游戏”按钮。单击“新游戏”按钮时,将运行以下代码:

Case:R.id.new_button:     
Intent  = new Intent(this, Difficulty.class);
        startActivity(openDifficulty);
        break; 

然后打开“难度”活动屏幕,其中包含“简单”和“困难”按钮。例如,当单击“简单”或“困难”按钮时,将运行:

case R.id.easy_button:
        Intent openEasy = new Intent(this, EasyGameScreen.class);
        startActivity(openEasy);
        break; 

case R.id.hard_button:
        Intent openHard = new Intent(this, HardGameScreen.class);
        startActivity(openHard);
        break; 

然后将用户带到相应的级别

我怎样才能让“继续”按钮从原来的相同点恢复上一场比赛?

谢谢你的帮助

4

3 回答 3

1

您需要根据您的游戏要求保存游戏状态,然后检查您的第一个活动中是否存在任何保存状态,如果存在则显示继续按钮,然后单击该按钮按保存状态,你就完成了

于 2013-02-27T16:50:46.733 回答
0

看起来您需要使用startActivityForResult();而不是startActivity();. 当您finish();在设置难度后调用下一个 Activity 以将其关闭时,就会出现差异。

  • 如果您使用 开始下一个 Activity startActivityForResult();,则将 onActivityResult()在原始 Activtiy 中调用(即您之前的游戏),您可以从那里恢复游戏。
  • 当你使用startActivity();时,onActivityResult();永远不会被调用。

我希望这有帮助。

于 2013-02-27T17:00:32.897 回答
0

您需要保存用户离开的游戏状态。您可以通过使用共享偏好来做到这一点。继续游戏时,您将检查共享偏好的值并从中获取值。有关如何在共享首选项中保存数据的更多信息,请参阅官方 Android 文档

http://developer.android.com/reference/android/content/SharedPreferences.html

于 2013-02-27T17:19:51.977 回答