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

前端之家收集整理的这篇文章主要介绍了在启动时正在调用的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相关文章