我有一个包含三个页面的简单游戏:start_page
,play_page
和lose_page
。在lose_page
我添加了home_button
,您将转到start_page
再次播放。
我想要的是当我按下start_page
中手机的后退按钮让我离开游戏时,但问题是后退按钮将我带到上一页{{1 }}。
以下是lose_page
中home_button
的代码,可将您带到lose_page
:
start_page
任何帮助将不胜感激。
答案 0 :(得分:1)
你的onClick()中的finish()方法将完成工作但我认为你的案例有更好的方法。
如果你从play_page开始我认为是这样的lost_page,那么在你创建startActivity(LostActivityIntent)之后;只需调用finish(),它就会完成你的play_page并打开lost_page。
之后在你的home_btn onClick()回调(监听器)所在的lost_page中,只需调用finish(),不要在你的home_page中启动新的Intent,因为它已经创建了。
最后,当您按下主屏幕中的后退按钮时,它将退出整个应用程序。非常简单和干净的解决方案。
你应该使用Android Activity堆栈来关注屏幕,不要像那样启动意图。
答案 1 :(得分:0)
尝试将finish()方法添加到代码中,
Button home_btn = (Button)findViewById(R.id.btnPlayAgain);
home_btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(LostActivity.this,
HomeActivity.class);
startActivity(i);
//call the finish method
finish();
}
});
在活动上调用finish()时,会执行onDestroy()方法并销毁您的LostActivity,这会阻止从HomeActivity返回LostActivity。