Java 必须按两次后退按钮
我试图在Java 必须按两次后退按钮,java,android,android-intent,onbackpressed,Java,Android,Android Intent,Onbackpressed,我试图在活动上实现简单的后退按钮以转到上一个活动,但当我调用方法finish()时,出现了一些奇怪的行为-问题是我必须按两次后退按钮?为什么会这样?在back方法中,我只有finish()。如果不实例化一个全新的意图,那么转到先前保存的活动的另一种方法是什么 public void back1 (View view){ this.finish(); } 这是第二次尝试,结果相同: ImageButton buttonback = (ImageButton) findVie
活动
上实现简单的后退按钮
以转到上一个活动
,但当我调用方法finish()
时,出现了一些奇怪的行为-问题是我必须按两次后退
按钮?为什么会这样?在back方法中,我只有finish()
。如果不实例化一个全新的意图
,那么转到先前保存的活动
的另一种方法是什么
public void back1 (View view){
this.finish();
}
这是第二次尝试,结果相同:
ImageButton buttonback = (ImageButton) findViewById(R.id.imageButton6);
buttonback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
onBackPressed();
}
});
将此添加到代码中,超级调用将关闭活动无需调用finish()如果您只想让设备返回按钮正常工作,则无需覆盖活动中的onBackPressed方法 如果要在视图中放置自定义按钮并将操作设置回该按钮,则需要将button clicklistener写入该按钮
backbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
您很可能会两次开始此活动
当你后退时,你完成了一个,而另一个向前。检查onCreate和onResume是否有任何可能正在使用意图或启动任何活动的内容请显示您的代码您应该在此处发布活动代码Finish不会重新启动当前活动。您的代码中有其他错误,但我们不知道是什么,因为我们猜不到您的代码。您很可能会启动活动两次。按
back
时,您正在完成一个,另一个正在向前移动。检查您的onCreate
和onResume
是否存在任何可能正在使用意图或启动任何活动的内容。活动添加到堆栈中的次数越多,创建和启动活动的次数就越多。如@bonatti所述,检查活动启动代码。检查活动是否正在启动,并提供整个活动代码。。我想你做错了什么。
backbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});