ActionBar内部的“后退”按钮如何完成当前活动

时间:2019-07-06 14:30:31

标签: java android kotlin

我有3个活动:活动A,活动B和活动C。 用户可以从活动A转到活动C,也可以从B转到C。 当用户从A转到C或从B转到C时,我不调用finish(),因此C活动打开。 在C活动内部,我想通过单击当前活动关闭的位置来返回按钮(应用程序的左上角)。 如果用户在关闭C后从A转到C,则用户将再次看到活动A 如果用户在关闭C后从B转到C,则用户将再次看到活动B

我该如何制作后退按钮?我想这个按钮必须完成当前的活动,一切都会好起来的。 通常程序员使用     supportActionBar !!。setDisplayHomeAsUpEnabled(true) 但是在这种情况下,用户只能进入活动A,因此该解决方案对我不起作用

1 个答案:

答案 0 :(得分:1)

只需执行以下操作:

getActionBar().setDisplayHomeAsUpEnabled(true);

on onCreate()方法。然后将其也放入活动类中:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
     switch (item.getItemId()) {
     case android.R.id.home:
          finish();
          return true;
     default:
          return super.onOptionsItemSelected(item);
     }
}

finish()函数关闭当前活动,并导航到应用程序中上次访问的活动,简而言之,它会返回。