如何返回到之前的活动?
How to go back to previous activite(s)?
所以我有 Activity A、B 和 C。Activity A 和 B 都去 activity C。当我在 activity C 和我按 mySupportActionBar 上的返回主页按钮,我想 return 到 activity 的状态(从我离开时的状态)我来自。我将如何做到这一点?
这是我的 onOptionsItemSelected()。所以目前,它返回到我在清单中指定的指定父 activity 以避免我的应用程序崩溃。因为父活动需要来自意图的字符串。
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
NavUtils.navigateUpFromSameTask(this);
}
return super.onOptionsItemSelected(item);
}
我也很想完成这个 onBackPressed()。
使用android.R.id.home
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
当您处于内部 activity 时,后退箭头按钮是 "home" 按钮,因此您可以完成内部 activity 或调用后退按钮
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您也可以使用工具栏上的 setNavigationOnClickListener
来触发后退按钮。
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_filter_category);
setSupportActionBar(toolbar);
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false);
//back button action
toolbar.setNavigationOnClickListener(view -> finish());
}
}
所以我有 Activity A、B 和 C。Activity A 和 B 都去 activity C。当我在 activity C 和我按 mySupportActionBar 上的返回主页按钮,我想 return 到 activity 的状态(从我离开时的状态)我来自。我将如何做到这一点?
这是我的 onOptionsItemSelected()。所以目前,它返回到我在清单中指定的指定父 activity 以避免我的应用程序崩溃。因为父活动需要来自意图的字符串。
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if(id == android.R.id.home)
{
NavUtils.navigateUpFromSameTask(this);
}
return super.onOptionsItemSelected(item);
}
我也很想完成这个 onBackPressed()。
使用android.R.id.home
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
当您处于内部 activity 时,后退箭头按钮是 "home" 按钮,因此您可以完成内部 activity 或调用后退按钮
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您也可以使用工具栏上的 setNavigationOnClickListener
来触发后退按钮。
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_filter_category);
setSupportActionBar(toolbar);
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false);
//back button action
toolbar.setNavigationOnClickListener(view -> finish());
}
}