我正在使用“后退”箭头在操作栏中实施向上导航。我一直在这样做,如下所示:
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
并在清单中手动声明父项活动。问题是,在我的应用程序中,对于某些活动,可能有许多到达目标活动的路线。
我一直在研究这个http://developer.android.com/guide/topics/ui/actionbar.html#Home
并引用
或者,在您的活动中重写getSupportParentActivityIntent()和onCreateSupportNavigateUpTaskStack()。当父活动取决于用户如何到达当前屏幕时,父活动可能不同时,这是适当的。也就是说,如果用户可能已经走过许多路径才能到达当前屏幕,则“向上”按钮应沿着用户实际到达该路径的路径向后导航。
当用户在浏览您的应用程序时(在应用程序自己的任务中)按下“向上”按钮时,系统将调用getSupportParentActivityIntent()。如果在导航时打开的活动取决于用户到达当前位置的方式而有所不同,则您应该重写此方法以返回启动适当父活动的Intent。
唯一的问题是我不知道用什么来覆盖它来获取当前的父活动。以前有人使用过吗?我将不胜感激建议
如果有人可以帮助我,我将不胜感激,不建议将其用作后退按钮。我只是想覆盖向上按钮。
哦...对于可能需要比所提供的答案更有用的答案的人...这就是我所做的
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
switch (item.getItemId()){
case android.R.id.home:
finish();
overridePendingTransition(R.animator.close_slide_in, R.animator.close_slide_out);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
因此,对于android.r.id.home,您可以在其中放置所需的操作。就我而言,我只是想完成当前活动
我希望这对外面的人有用
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句