我正在创造一个有3名玩家生命(心灵)的问答游戏。玩家有3次尝试得到正确答案。如果玩家在心脏变为0之前得到正确的答案,则创建新的等级。现在我的问题是
当玩家心脏== 0并清除玩家状态,重新加载到1级并设置新3心时,如何重新开始我的游戏活动?
Private void showResult(){
for(int b = 0; b<4; b++){
answers[b].setOnClickListener(null);
}
if(hearts==0){
resultCoins.setVisibility(View.GONE);
resultImg.setImageResource(R.drawable.smile);
loadLevel.setText("CONTINUE");
resultTxt.setText("Correct is: "+answers[correctAnswer-1].getText());
loadLevel.setVisibility(View.GONE);
Toast.makeText(GamePlay.this, "Game Over, Press Back to Return",
Toast.LENGTH_LONG).show();
在你的活动中,写下this.recreate();
。这是您问题的最短解决方案,它将破坏活动并调用onCreate
等生命周期方法。
此外,您可以创建一个方法,将模型和视图重置为其初始状态。
最好不要将您的活动重新创建为应用程序主流的一部分。