android fragments - Error inflating DrawerLayout -


public class homeactivity extends activity { private string[] drawer_options; private listview mdrawerlist; private drawerlayout mdrawerlayout; private actionbardrawertoggle mdrawertoggle; private charsequence mdrawertitle; private charsequence mtitle;  @suppresslint("newapi") @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_home);      mtitle = mdrawertitle = gettitle();     drawer_options = getresources().getstringarray(r.array.drawer_array);     mdrawerlayout = (drawerlayout) findviewbyid(r.id.drawer_layout);     mdrawerlist = (listview) findviewbyid(r.id.left_drawer);      // set custom shadow overlays main content when drawer opens    mdrawerlayout.setdrawershadow(r.drawable.drawer_shadow, gravitycompat.start);     // set drawer's list view items , click listener     mdrawerlist.setadapter(new arrayadapter<string>(this,             r.layout.drawer_list_item, drawer_options));     mdrawerlist.setonitemclicklistener(new draweritemclicklistener());      // enable actionbar app icon behave action toggle nav drawer     getactionbar().setdisplayhomeasupenabled(true);     getactionbar().sethomebuttonenabled(true);      // actionbardrawertoggle ties the proper interactions     // between sliding drawer , action bar app icon     mdrawertoggle = new actionbardrawertoggle(             this,                  /* host activity */             mdrawerlayout,         /* drawerlayout object */             r.drawable.ic_drawer,  /* nav drawer image replace 'up' caret */             r.string.drawer_open,  /* "open drawer" description accessibility */             r.string.drawer_close  /* "close drawer" description accessibility */             ) {         public void ondrawerclosed(view view) {             getactionbar().settitle(mtitle);             invalidateoptionsmenu(); // creates call onprepareoptionsmenu()         }          public void ondraweropened(view drawerview) {             getactionbar().settitle(mdrawertitle);             invalidateoptionsmenu(); // creates call onprepareoptionsmenu()         }     };     mdrawerlayout.setdrawerlistener(mdrawertoggle);      if (savedinstancestate == null) {         selectitem(0);     } }  @override public boolean oncreateoptionsmenu(menu menu) {     menuinflater inflater = getmenuinflater();     inflater.inflate(r.menu.main, menu);     return super.oncreateoptionsmenu(menu); }  /* called whenever call invalidateoptionsmenu() */ @override public boolean onprepareoptionsmenu(menu menu) {     // if nav drawer open, hide action items related content view     boolean draweropen = mdrawerlayout.isdraweropen(mdrawerlist);     menu.finditem(r.id.actionitem1).setvisible(!draweropen);     return super.onprepareoptionsmenu(menu); }  @override public boolean onoptionsitemselected(menuitem item) {      // action bar home/up action should open or close drawer.      // actionbardrawertoggle take care of this.     if (mdrawertoggle.onoptionsitemselected(item)) {         return true;     }     // handle action buttons     switch(item.getitemid()) {     case r.id.actionitem1:         // create intent perform web search planet         intent intent = new intent(intent.action_web_search);         intent.putextra(searchmanager.query, getactionbar().gettitle());         // catch event there's no activity handle intent         if (intent.resolveactivity(getpackagemanager()) != null) {             startactivity(intent);         } else {             toast.maketext(this, r.string.app_not_available, toast.length_long).show();         }         return true;     default:         return super.onoptionsitemselected(item);     } }  /* click listner listview in navigation drawer */ private class draweritemclicklistener implements listview.onitemclicklistener {     @override     public void onitemclick(adapterview<?> parent, view view, int position, long id) {         selectitem(position);     } }  private void selectitem(int position) {     // update main content replacing fragments     fragment fragment = new planetfragment();     bundle args = new bundle();     args.putint(planetfragment.arg_planet_number, position);     fragment.setarguments(args);      fragmentmanager fragmentmanager = getfragmentmanager();     fragmentmanager.begintransaction().replace(r.id.content_frame, fragment).commit();      // update selected item , title, close drawer     mdrawerlist.setitemchecked(position, true);     settitle(drawer_options[position]);     mdrawerlayout.closedrawer(mdrawerlist); }  @override public void settitle(charsequence title) {     mtitle = title;     getactionbar().settitle(mtitle); }  @override protected void onpostcreate(bundle savedinstancestate) {     super.onpostcreate(savedinstancestate);     // sync toggle state after onrestoreinstancestate has occurred.     mdrawertoggle.syncstate(); }  @override public void onconfigurationchanged(configuration newconfig) {     super.onconfigurationchanged(newconfig);     // pass configuration change drawer toggls     mdrawertoggle.onconfigurationchanged(newconfig); }  /**  * fragment appears in "content_frame"  */ public static class planetfragment extends fragment {     public static final string arg_planet_number = "planet_number";      public planetfragment() {         // empty constructor required fragment subclasses     }      @override     public view oncreateview(layoutinflater inflater, viewgroup container,             bundle savedinstancestate) {         view rootview = inflater.inflate(r.layout.cliq_fragment, container, false);         int = getarguments().getint(arg_planet_number);         string planet = getresources().getstringarray(r.array.drawer_array)[i];          int imageid = getresources().getidentifier(planet.tolowercase(locale.getdefault()),                         "drawable", getactivity().getpackagename());         ((imageview) rootview.findviewbyid(r.id.image)).setimageresource(imageid);         getactivity().settitle(planet);         return rootview;     }}} 

i'm trying start activity activity using intent. i'm not sure what's wrong or if i'm missing because force closes @ oncreate() tried errors logcat haven't had luck. here's logcat when starts activity.

05-20 22:59:27.697: d/memalloc(21948): /dev/pmem: unmapping buffer base:0x51d88000 size:4976640 offset:4853760 05-20 22:59:27.697: d/memalloc(21948): /dev/pmem: unmapping buffer base:0x52247000 size:5099520 offset:4976640 05-20 22:59:27.697: d/memalloc(21948): /dev/pmem: unmapping buffer base:0x52724000 size:5222400 offset:5099520 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve virtual method 53: landroid/support/v4/widget/drawerlayout;.closedrawer (landroid/view/view;)v 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve virtual method 50: landroid/support/v4/app/actionbardrawertoggle;.onconfigurationchanged (landroid/content/res/configuration;)v 05-20 22:59:27.727: e/dalvikvm(21948): not find class 'android.support.v4.widget.drawerlayout', referenced method com.example.facecliq.homeactivity.oncreate 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve check-cast 32 (landroid/support/v4/widget/drawerlayout;) in lcom/example/facecliq/homeactivity; 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve virtual method 51: landroid/support/v4/app/actionbardrawertoggle;.onoptionsitemselected (landroid/view/menuitem;)z 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve virtual method 52: landroid/support/v4/app/actionbardrawertoggle;.syncstate ()v 05-20 22:59:27.727: w/dalvikvm(21948): vfy: unable resolve virtual method 54: landroid/support/v4/widget/drawerlayout;.isdraweropen (landroid/view/view;)z 05-20 22:59:27.727: w/dalvikvm(21948): unable resolve superclass of lcom/example/facecliq/homeactivity$1; (30) 05-20 22:59:27.737: w/dalvikvm(21948): link of class 'lcom/example/facecliq/homeactivity$1;' failed 05-20 22:59:27.757: w/dalvikvm(21948): threadid=1: thread exiting uncaught exception (group=0x40a9e1f8) 05-20 22:59:27.777: e/androidruntime(21948): fatal exception: main 05-20 22:59:27.777: e/androidruntime(21948): java.lang.runtimeexception: unable start activity componentinfo{com.example.facecliq/com.example.facecliq.homeactivity}: android.view.inflateexception: binary xml file line #1: error inflating class android.support.v4.widget.drawerlayout 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread.performlaunchactivity(activitythread.java:1956) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread.handlelaunchactivity(activitythread.java:1981) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread.access$600(activitythread.java:123) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread$h.handlemessage(activitythread.java:1147) 05-20 22:59:27.777: e/androidruntime(21948): @ android.os.handler.dispatchmessage(handler.java:99) 05-20 22:59:27.777: e/androidruntime(21948): @ android.os.looper.loop(looper.java:137) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread.main(activitythread.java:4424) 05-20 22:59:27.777: e/androidruntime(21948): @ java.lang.reflect.method.invokenative(native method) 05-20 22:59:27.777: e/androidruntime(21948): @ java.lang.reflect.method.invoke(method.java:511) 05-20 22:59:27.777: e/androidruntime(21948): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:812) 05-20 22:59:27.777: e/androidruntime(21948): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:579) 05-20 22:59:27.777: e/androidruntime(21948): @ dalvik.system.nativestart.main(native method) 05-20 22:59:27.777: e/androidruntime(21948): caused by: android.view.inflateexception: binary xml file line #1: error inflating class android.support.v4.widget.drawerlayout 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:691) 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.inflate(layoutinflater.java:466) 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.inflate(layoutinflater.java:396) 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.inflate(layoutinflater.java:352) 05-20 22:59:27.777: e/androidruntime(21948): @ com.android.internal.policy.impl.phonewindow.setcontentview(phonewindow.java:251) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activity.setcontentview(activity.java:1835) 05-20 22:59:27.777: e/androidruntime(21948): @ com.example.facecliq.homeactivity.oncreate(homeactivity.java:40) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activity.performcreate(activity.java:4465) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1049) 05-20 22:59:27.777: e/androidruntime(21948): @ android.app.activitythread.performlaunchactivity(activitythread.java:1920) 05-20 22:59:27.777: e/androidruntime(21948): ... 11 more 05-20 22:59:27.777: e/androidruntime(21948): caused by: java.lang.classnotfoundexception: android.support.v4.widget.drawerlayout 05-20 22:59:27.777: e/androidruntime(21948): @ dalvik.system.basedexclassloader.findclass(basedexclassloader.java:61) 05-20 22:59:27.777: e/androidruntime(21948): @ java.lang.classloader.loadclass(classloader.java:501) 05-20 22:59:27.777: e/androidruntime(21948): @ java.lang.classloader.loadclass(classloader.java:461) 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.createview(layoutinflater.java:552) 05-20 22:59:27.777: e/androidruntime(21948): @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:680) 05-20 22:59:27.777: e/androidruntime(21948): ... 20 more

make sure you're using latest revision of support library(13) contains drawerlayout , other relevant classes. copy .jar support library /libs folder of project. finally, update adt latest version. logcat complaining

    caused by: android.view.inflateexception: binary xml file line #1: error inflating class android.support.v4.widget.drawerlayout 05-20 22:59:27.777: e/androidruntime(21948): @   not find class 'android.support.v4.widget.drawerlayout', referenced method com.example.facecliq.homeactivity.oncreate  

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -