Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NavigationView throwing error: No resource identifier found for attribute 'menu' in package

I am trying to add NavigationView in my layout as below:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin">


    <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/hello_world" />

        <android.support.design.widget.NavigationView
            xmlns:app="http://schemas.android.com/apk/res-auto"
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            app:menu="@menu/drawer" />

    </android.support.v4.widget.DrawerLayout>
</RelativeLayout>

But the problem is I am getting an error during compile as below:

C:\Users\IBM_ADMIN\Documents\Androidprojects\supporttest\app\src\main\res\layout\activity_main.xml
Error:(22) No resource identifier found for attribute 'menu' in package 'ranjithnair02.com.supporttest'
Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Users\IBM_ADMIN\Documents\android-studio\sdk\build-tools\22.0.1\aapt.exe'' finished with non-zero exit value 1
Information:BUILD FAILED

I have added the menu item in menu/drawer.xml.

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">

    <group android:checkableBehavior="single">

        <item
            android:id="@+id/navigation_item_1"
            android:checked="true"
            android:icon="@drawable/abc_tab_indicator_mtrl_alpha"
            android:title="First" />

        <item
            android:id="@+id/navigation_item_2"
            android:icon="@drawable/abc_btn_check_material"
            android:title="Second" />
      </group>
</menu>
like image 362
Psypher Avatar asked May 30 '15 08:05

Psypher


1 Answers

Make sure you have the correct dependency to the Android Design Support Library. It's easy to choose the wrong one - because it seems that Google posted two different dependency strings:

At the time of this answer, the Android developer blog (and the comment by user hungryghost) had the correct dependency string, while the dependency string on the Support library homepage did not work.

Use this one: compile 'com.android.support:design:26.1.0'

Note that the version is 22.2.0 (wrong: 22.0.0) and that the package is called design (wrong: support-design)

After these changes use the Android Studio menu "Rebuild project", or the "Sync" button that appears sometimes after changing the gradle file. That finally made it work for me.

like image 104
Patrick Avatar answered Sep 27 '22 19:09

Patrick