我认为这是一个简单的问题,但它让我头疼。
我一直试图让它发挥作用,但我总是失败。请忍受我的问题。
活动状态不适用于项目>菜单中的项目。
如果我按下该项目。 View工作正常。但是,如果我按下汉堡菜单。该项目没有处于活动状态,并且具有活动状态的最后一个项目仍将处于活动状态。
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/menu_home"
android:title="Home" />
<item
android:id="@+id/nav_game"
android:icon="@drawable/menu_account"
android:title="Game" />
<item
android:id="@+id/nav_livechat"
android:icon="@drawable/menu_account"
android:title="Live Chat"/>
</group>
<item android:title="Transaction">
<menu>
<item
android:id="@+id/nav_deposit"
android:icon="@drawable/menu_depwit"
android:title="Deposit" />
<item
android:id="@+id/nav_withdraw"
android:icon="@drawable/menu_depwit"
android:title="Withdraw" />
<item
android:id="@+id/nav_transfer"
android:icon="@drawable/menu_transfer"
android:title="Transfer" />
</menu>
</item>
public boolean onNavigationItemSelected(MenuItem item) {
if (id == R.id.nav_home) {
HomeFragment homeFragment = new HomeFragment();
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.content_fragment, homeFragment, homeFragment.getTag()).commit();
} else if () {
// and so on...
}
}
任何帮助都将不胜感激。
答案 0 :(得分:0)
你可以做这样的事情
{{1}}
不是一个完美的解决方案,但为我工作..
答案 1 :(得分:0)
这是一个片段尝试它,希望它能帮助你
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
if (!item.isChecked()) {
item.setChecked(true);
}
Bundle mBundle = new Bundle();
switch (item.getItemId()) {
case R.id.nav_home:
// Your action goes here....
break;
}
drawer.closeDrawer(GravityCompat.START);
return true;
}