在启动时正在调用的ActionBar中的android – onNavigationItemSelected如何避免?

我正在使用带有一个下拉菜单的ActionBar,并在Activity被创建后立即调用onNavigationItemSelected(),所以调用一个项目.我的下拉菜单的第一个项目是Home,与 android.R.id.home按下应用程序图标相同的操作,因此当应用程序启动时,它调用自身.为了避免这种情况发生,我有这个代码
if(this.getClass() != FrecView.class){  //if i am not currently on the Activity
    Intent frec = new Intent(this,FrecView.class);
    frec.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(frec);
}

但是我对所有的活动都有ActionBar,所以每次开始每个活动都会自动调用它,所以我必须为每个活动放置该代码.发生什么事?我如何防止这种情况发生?

解决方法

i am using ActionBar whit a dropdown menu and onNavigationItemSelected() is called as soon Activity is created

这不是设计为“菜单”,只不过选项卡被设计为“菜单”.列表导航旨在允许用户通过替换片段来指示当前活动的某些内容.操作项目(例如,工具栏按钮,操作溢出区域)用于在活动之间导航.

The first item of my dropdown menu is Home the same action as pressing the application icon whit android.R.id.home so when application starts it calls itself.

所以,从你的“菜单”中删除.用户可以按左侧的应用程序图标在家中导航.

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...