导航抽屉不可点击

时间:2018-11-23 08:12:50

标签: java android android-navigation-drawer

我正在尝试在我的所有活动中实现导航抽屉(注意:不是片段)。我这样做了,我什至初始化了onNavigationItemSelected,但是菜单仍然不可点击。与之类似,导航抽屉确实确实向右滑动,但是菜单选项不可单击,并且不会转到下一个活动。

我有两种菜单-一种是右上角的导航抽屉,另一种是左上角的省略号。我的左上角工作正常,但导航抽屉不工作。

下面是我的导航抽屉代码:


在创建时:

nv = findViewById(R.id.nvNavView);
nv.setNavigationItemSelectedListener(this);

@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {

    int id = menuItem.getItemId();
    switch (id){
        case R.id.navKnowledge:{
            Intent intent = new Intent(SecondActivity.this, KnowledgeActivity.class);
            startActivity(intent);
            break;
    }
        case R.id.navRules:{
            Intent intent = new Intent(SecondActivity.this, RulesActivity.class);
            startActivity(intent);
            break;
        }
    }

    return true;
}

onCreateOptions:

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu, menu);
   //        getMenuInflater().inflate(R.menu.navigation_menu, 
    menu);
        return true;
    }

抽屉布局XML

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SecondActivity"
android:orientation="vertical"
android:gravity="center"
android:background="#f9f0e1"
android:id="@+id/drawerLayout">

<android.support.design.widget.NavigationView
    android:id="@+id/nvNavView"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    app:menu="@menu/navigation_menu"
    android:layout_gravity="start">

</android.support.design.widget.NavigationView>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <LinearLayout
        android:clipToPadding="false"
        android:gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoKnowledge"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp"
            android:background="@drawable/circlebgpurple">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebgpurple">

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_knowledge"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="Knowledge"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#3a00a4"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="Search Knowledge"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoRules"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebgpink"
                >

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_rules"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="Business Rules"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#ed9bd5"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="Search Biz. Rules"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>
    </LinearLayout>

    <LinearLayout
        android:clipToPadding="false"
        android:gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoFaq"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="match_parent"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebgyellow"
                >

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_faq"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="FAQ"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#fbff00"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="Clear Doubts Here"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoQuery"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebggreen"
                >

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_query"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="Query"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#00a700"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="Submit New Query"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>
    </LinearLayout>

    <LinearLayout
        android:clipToPadding="false"
        android:gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoProfile"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebglightpink"
                >

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_profile"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="Profile"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#004ba7"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="My Personal Details"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:id="@+id/btnSecondtoHelp"
            android:foreground="?android:attr/selectableItemBackground"
            android:clickable="true"
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            app:cardElevation="10dp">

            <LinearLayout
                android:layout_width="130dp"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center"
                android:background="@drawable/circlebgorange"
                >

                <ImageView
                    android:layout_width="64dp"
                    android:layout_height="64dp"
                    android:background="@drawable/circlewhite"
                    android:src="@drawable/ic_help"
                    android:padding="10dp"
                    android:layout_marginTop="5dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textStyle="bold"
                    android:layout_marginTop="10dp"
                    android:text="Help"
                    android:textColor="#000000"/>

                <View
                    android:layout_width="match_parent"
                    android:layout_height="5dp"
                    android:background="#f29d60"
                    android:layout_margin="10dp"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:text="Help &amp; Information"
                    android:textStyle="bold"
                    android:padding="1dp"
                    android:textColor="#000000"/>

            </LinearLayout>
        </android.support.v7.widget.CardView>
    </LinearLayout>
</LinearLayout>


导航菜单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/navKnowledge"
    android:title="Search Knowledge"
    android:icon="@drawable/ic_knowledge"/>

<item android:id="@+id/navRules"
    android:title="Search Biz. Rules"
    android:icon="@drawable/ic_rules"/>

<item android:id="@+id/navFaq"
    android:title="FAQ"
    android:icon="@drawable/ic_faq"/>

<item android:id="@+id/navQuery"
    android:title="Submit New Query"
    android:icon="@drawable/ic_query"/>

<item android:id="@+id/navProfile"
    android:title="My Account"
    android:icon="@drawable/ic_profile"/>

<item android:id="@+id/navHelp"
    android:title="Help &amp; Navigation"
    android:icon="@drawable/ic_help"/>


我注释了导航抽屉的菜单充气机,因为尽管它们可以单击,但菜单显示为左上角的3点,而不是我想要的位置(右上角,菜单为3行类型)。

有人知道我在某处做错了吗?可以引导我通过吗?

谢谢。

0 个答案:

没有答案