导航抽屉如何突出显示所选项目

导航抽屉如何突出显示所选项目,第1张

概述我为我的应用程序使用了可以在androidstudio中添加的导航抽屉,并且向Nav-drawer添加了一些菜单项(请参见代码块).如果我按第一个项目(nav_home)或第二个,则导航抽屉会高亮显示当前按下的项目.如果我按下项目“nav_information”按钮或其他项目,则新的(单击的)片段将打开并且看不

我为我的应用程序使用了可以在android studio中添加的导航抽屉,并且向Nav-drawer添加了一些菜单项(请参见代码块).如果我按第一个项目(nav_home)或第二个,则导航抽屉会高亮显示当前按下的项目.

如果我按下项目“ nav_information”按钮或其他项目,则新的(单击的)片段将打开并且看不到突出显示的内容(主页或第二个仍然突出显示的内容)

不久,只有前几项在所选项目上显示突出显示.

 <?xml version="1.0" enCoding="utf-8"?><group androID:checkableBehavior="single">    <item        androID:ID="@+ID/nav_home"        androID:icon="@drawable/ic_home_black"        androID:title="Startseite" />    <item androID:ID="@+ID/nav_greetings"        androID:title="Grußwort"/>    </group><group androID:checkableBehavior="single">    <item androID:title="Neuigkeiten">    <menu >        <item            androID:ID="@+ID/nav_information"            androID:icon="@drawable/ic_info_black"            androID:title="@string/Title_activity_aktuelles" />    </menu>    </item></group> ....

这就是我处理片段打开方式的方式.

  @SuppressWarnings("StatementWithEmptyBody")@OverrIDepublic boolean onNavigationItemSelected(MenuItem item) {    // Handle navigation vIEw item clicks here.    int ID = item.getItemID();    Fragment myFragment = null;    if (ID == R.ID.nav_home) {            drawer.setSelected(true);        myFragment = new MainScreen();    }else if (ID == R.ID.nav_greetings){        myFragment = new Greetings();    } else if (ID == R.ID.nav_information) {        myFragment = new Aktuelles();    } else if (ID == R.ID.nav_directions) {        myFragment = new Anfahrt();    } else if (ID == R.ID.nav_basilika) {        myFragment = new Rundabout();    } else if (ID == R.ID.nav_download) {        myFragment = new Downloads();    } else if (ID == R.ID.nav_history) {        myFragment = new History();    }else if(ID == R.ID.nav_hauptwallfahrt){        myFragment = new Hauptwallfahrt();    }else if (ID == R.ID.nav_themenwallfahrt){        myFragment = new themenwallfahrt();    }else if (ID == R.ID.nav_pilgergruppen){        myFragment = new Pilgergruppen();    }else if (ID ==R.ID.nav_wallfahrtgodi){        myFragment = new WallfahrtsgottesdIEnste();    }    FragmentManager fragmentManager = getSupportFragmentManager();    FragmentTransaction ft = fragmentManager.beginTransaction();    // Replace the requestet Fragment    ft.replace(R.ID.container, myFragment) ;    ft.commit();    DrawerLayout drawer = (DrawerLayout) findVIEwByID(R.ID.drawer_layout);    drawer.closeDrawer(GravityCompat.START);    return true;}

有办法“启用”突出显示吗?

提前致谢!

解决方法:

您只需要更改标签的顺序

我尝试了最后一组,但可以,请检查

<item androID:title="Neuigkeiten">  <menu >      <group androID:checkableBehavior="single">          <item            androID:ID="@+ID/nav_information"            androID:icon="@drawable/ic_info_black"            androID:title="@string/Title_activity_aktuelles" />     </group> </menu>
总结

以上是内存溢出为你收集整理的导航抽屉如何突出显示所选项目全部内容,希望文章能够帮你解决导航抽屉如何突出显示所选项目所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1090682.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存