我在这样的活动中使用工具栏:
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
这个代码在AppCombatActivity中:
@Override
public boolean onSupportNavigateUp() {
onBackPressed();
return true;
}
在Manifest中我定义了父活动。
有效。但每次我按下按钮“onCreate'在父活动上被调用。但那不是我想要的。当我按下设备上的后退按钮时,它会返回上一个活动,然后调用onResume。当我按下工具栏中的后退按钮时,它也应该这样做。
任何想法? 谢谢!
答案 0 :(得分:1)
在您的清单文件中添加
launchmode="singleTop"
在父活动的声明中。 查看LorenzCK的答案: https://stackoverflow.com/a/15933890/5987223
答案 1 :(得分:0)
根据您的要求添加此内容......
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
//Start activity which you want... to call onCreateMethod
return true;
default:
return super.onOptionsItemSelected(item);
}
}
答案 2 :(得分:0)
此代码适用于我:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
**onBackPressed();**
return true;
default:
return super.onOptionsItemSelected(item);
}
}