我有一个包含多个活动的应用程序。一个示例就是我的MainActivity
,它显示项目列表,您可以从中打开某些项目的“详细”概述。
单击一个项目将其打开后,我将打开另一个活动
final Intent intent = new Intent(getApplicationContext(), AddActivity.class);
getApplicationContext().startActivity(intent);
活动在其工具栏中打开后,我将具有一个后退按钮。我猜该按钮是开箱即用的,因为我正在使用android.support.v7.widget.Toolbar
。
如果在MainActivity
上我滚动到列表中很远,然后决定打开一个新活动,然后在该新活动上单击工具栏的后退按钮,我返回到MainActivity
,但刷新了(其OnCreate方法被调用)。
如果我打开第二个活动,并且它有一个执行某些操作的按钮,最后,您返回到MainActivity,从扩展的onBackPressed()
调用FragmentActivity
(扩展AppCompatActivity
),它将使您返回到MainActivity
,但无需进行任何刷新,就可以继续您停止的地方。
我的问题是,是否可以用这种onBackPressed()
的行为替换工具栏后退按钮的当前行为?
答案 0 :(得分:0)
我成功了。我要做的就是重写onSupportNavigateUp
,以便在两个按钮上都具有相同的行为。
@Override
public boolean onSupportNavigateUp() {
onBackPressed(); // one inherited from android.support.v4.app.FragmentActivity
return false;
}
答案 1 :(得分:0)
简单地,您可以覆盖onbackPressed方法,并在单击工具栏的后退按钮时调用该方法。
@Override
public void onBackPressed() {
super.onBackPressed()
}
点击该按钮时调用此按钮。