繁体   English   中英

新的NavigationView从第二个项目开始

[英]New NavigationView starts from second item

我真的不知道为什么,但是使用新的android.support.design.widget.NavigationView我遇到了一个问题。 我能够使用片段创建正确的抽屉,并且在我的painter_menu.xml中,我具有以下功能:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group android:checkableBehavior="single">

        <item
            android:id="@+id/main_item"
            android:icon="@mipmap/ic_main"
            android:title="@string/main"
            />
        <item
            android:checked="true"
            android:id="@+id/second_item"
            android:icon="@mipmap/ic_playlist_add_black_24dp"
            android:title="@string/app_list"
            />

    </group>
</menu>

这是菜单的Java部分:

@Override
    public boolean onNavigationItemSelected(MenuItem menuItem) {
        @IdRes int id = menuItem.getItemId();
        if(id == mCurrentMenuItem) {
            mDrawerLayout.closeDrawers();
            return false;
        }
        switch (id){
            case R.id.main_item:
                setNewRootFragment(MainFragment.newInstance());
                break;
            case R.id.second_item:
                setNewRootFragment(SecondFragment.newInstance());
                break;
        }
        mCurrentMenuItem = id;
        menuItem.setChecked(true);
        return false;
    }

当应用程序启动片段时,我首先看到它是正确的,但是在抽屉列表中选择了第二个。 怎么可能?

您在列表中的第二项上设置android:checked="true" 如果您希望它首先显示为选中状态,请将其移至第一项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM