Class Not Found Android Support Design Widget NavigationView
Solution 1
Follow this steps:
- Right Click on your
Project->Open Module Settings
. - Then open Dependencies Tab.
- Click on + symbol then select Library Dependency.You will get an popup called Choose Library Dependency.
- There Enter "com.android.support". Then click on search icon.
- Now select the design library. and Click on OK.
Solution 2
Thank you for your concerns, I appreciate it. I found the answer for (my) this question at last.
Error inflating class android.support.design.widget.NavigationView #28 or #29
The solution that works for me, is that you must match your support design library
and your support AppCompat Library
. In the gradle module,
change the gradle version (Your desired library no. ) You can also find the latest gradle build in the link that I have given, but I suggest you check in your gradle module (The 2nd Picture, since they are first in updating the gradle build. Then in my gradle module - compile: ...
has been highlighted , meaning there is a newer version, just change the no. e.g 24.0.0
compile if it is stable, not preview), in a mean time, mine is 23.1.1
.
-> more gradle lib- gradleplease.appspot.com
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
:) It works for me!
Observation (For me, As I changed/solved this error, the value 23.x.x
): if your support-design
doesn't match with AppCompat-lib
produces #28 and if your AppCompat
doesn't match the support-design
produces #29. Just try, maybe I interchange the #.
RoCkDevstack
Not all knowing but doing my best to learn these, in-spite of my poor knowledge React Flutter WordPress Development SQL & PHP NodeJS
Updated on July 15, 2022Comments
-
RoCkDevstack almost 2 years
Good day, can you help me out. I got this error when compiling/running my code on an emulator. This is the sample tutorial I used to make. I used min Target API - 15 and compile the latest gradle
'com.android.support:design:23.0.0'
http://www.android4devs.com/2015/06/navigation-view-material-design-support.html
Code Error:
AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.eccp.projects.ecosavers.ecosavers/com.eccp.projects.ecosavers.ecosavers.activities.MainActivity}: android.view.InflateException: Binary XML file line #29: Binary XML file line #29: Error inflating class android.support.design.widget.NavigationView 12-29 06:43:39.409 3448-3448/com.eccp.projects.ecosavers.ecosavers E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
E/AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #29: Binary XML file line #29: Error inflating class android.support.design.widget.NavigationView
Here are my codes:
MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //SET my own toolbar toolbar = (Toolbar) findViewById(R.id.tool_bar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); mNavigationView = (NavigationView) findViewById(R.id.navigation_view); mNavigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { if (menuItem.isChecked()) menuItem.setChecked(false); else menuItem.setChecked(true); //Closing drawer on item click mDrawerlayout.closeDrawers(); //Check to see which item was being clicked and perform appropriate action switch (menuItem.getItemId()) { //Replacing the main content with ContentFragment Which is our Inbox View; case R.id.events: Toast.makeText(getApplicationContext(), "Inbox Selected", Toast.LENGTH_SHORT).show(); Eco_events fragment = new Eco_events(); android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); fragmentTransaction.replace(R.id.frame, fragment); fragmentTransaction.commit(); return true; // show a toast on click case R.id.activities: Toast.makeText(getApplicationContext(), "Send Selected", Toast.LENGTH_SHORT).show(); return true; case R.id.spam: Toast.makeText(getApplicationContext(), "Spam Selected", Toast.LENGTH_SHORT).show(); return true; default: Toast.makeText(getApplicationContext(), "Somethings Wrong", Toast.LENGTH_SHORT).show(); return true; } } }); // Initializing Drawer Layout and ActionBarToggle mDrawerlayout = (DrawerLayout) findViewById(R.id.drawer); mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerlayout, toolbar, R.string.drawerOpened, R.string.drawerOpened) { @Override public void onDrawerClosed(View drawerView) { // Code here will be triggered once the drawer closes as we dont want anything to happen so we leave this blank super.onDrawerClosed(drawerView); } @Override public void onDrawerOpened(View drawerView) { // Code here will be triggered once the drawer open as we dont want anything to happen so we leave this blank super.onDrawerOpened(drawerView); } }; //Setting the actionbarToggle to drawer layout mDrawerlayout.setDrawerListener(mDrawerToggle); //calling sync state is mDrawerToggle.syncState(); } @Override public boolean onOptionsItemSelected(MenuItem item) { return super.onOptionsItemSelected(item); }
XML:
activity_main.xml
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/drawer" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MainActivity"> <LinearLayout android:layout_height="match_parent" android:layout_width="match_parent" android:orientation="vertical" > <include android:id="@+id/tool_bar" layout="@layout/toolbar" /> <FrameLayout android:id="@+id/frame" android:layout_width="match_parent" android:layout_height="match_parent"> </FrameLayout> </LinearLayout> <android.support.design.widget.NavigationView android:id="@+id/navigation_view" android:layout_height="match_parent" android:layout_width="wrap_content" android:layout_gravity="start" app:headerLayout="@layout/header" app:menu="@menu/drawer" /> </android.support.v4.widget.DrawerLayout>
-
RoCkDevstack over 8 yearsthis you mean? compile 'com.android.support:design:23.0.0' I have already this lib. and gradle compiled already. :( . I will search on youtube how to post this stack trace.