java - Nullpointerexception when trying to send data from activity to class -


i need guys. i'm making quiz i'm stuck. first of got activity can choose between categories:

package com.laurenswuytsjordipapen.cultural.pursuit;  import android.app.activity; import android.content.intent; import android.content.sharedpreferences; import android.os.bundle; import android.preference.preferencemanager; import android.view.view; import android.widget.button;  import com.laurenswuytsjordipapen.cultural.pursuit.library.userfunctions;  public class dashboardactivity extends activity {     userfunctions userfunctions;     button btnlogout;     button btneuropa;     button btnamerika;     button btnafrika;     button btnazie;     @override     public void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);          /**          * dashboard screen application          * */                 // check login status in database         userfunctions = new userfunctions();         if(userfunctions.isuserloggedin(getapplicationcontext())){             setcontentview(r.layout.dashboard);             btnlogout = (button) findviewbyid(r.id.btnlogout);             btneuropa = (button) findviewbyid(r.id.btneuropa);             btnamerika = (button) findviewbyid(r.id.btnamerika);             btnafrika = (button) findviewbyid(r.id.btnafrika);             btnazie = (button) findviewbyid(r.id.btnazie);              btnlogout.setonclicklistener(new view.onclicklistener() {                  public void onclick(view arg0) {                     // todo auto-generated method stub                     userfunctions.logoutuser(getapplicationcontext());                     intent login = new intent(getapplicationcontext(), loginactivity.class);                     login.addflags(intent.flag_activity_clear_top);                     startactivity(login);                     // closing dashboard screen                     finish();                 }             });             btneuropa.setonclicklistener(new view.onclicklistener() {                  public void onclick(view arg0) {                      intent start = new intent(getapplicationcontext(), mainactivity.class);                     start.putextra("continent","europa");                     startactivity(start);                     // closing dashboard screen                     finish();                 }             });             btnamerika.setonclicklistener(new view.onclicklistener() {      public void onclick(view arg0) {          intent start = new intent(getapplicationcontext(), mainactivity.class);         start.putextra("continent","amerika");         startactivity(start);         // closing dashboard screen         finish();     } }); btnafrika.setonclicklistener(new view.onclicklistener() {      public void onclick(view arg0) {          intent start = new intent(getapplicationcontext(), mainactivity.class);         start.putextra("continent","afrika");         startactivity(start);         // closing dashboard screen         finish();     } }); btnazie.setonclicklistener(new view.onclicklistener() {      public void onclick(view arg0) {          intent start = new intent(getapplicationcontext(), mainactivity.class);         start.putextra("continent","azie");         startactivity(start);         // closing dashboard screen         finish();     } });            }else{             // user not logged in show login screen             intent login = new intent(getapplicationcontext(), loginactivity.class);             login.addflags(intent.flag_activity_clear_top);             startactivity(login);             // closing dashboard screen             finish();         }         } } 

and go quiz = mainactivity. send intent mainacitivty knows category is:

package com.laurenswuytsjordipapen.cultural.pursuit; import java.util.list;  import com.laurenswuytsjordipapen.cultural.pursuit.library.userfunctions;  import android.os.bundle; import android.preference.preferencemanager; import android.app.activity; import android.content.intent; import android.content.sharedpreferences; import android.util.log; import android.view.menu; import android.view.view; import android.widget.button; import android.widget.radiobutton; import android.widget.radiogroup; import android.widget.textview; public class mainactivity extends activity {     userfunctions userfunctions;     button btnlogout;     list<vragen> queslist;     int score=0;     int qid=0;     vragen currentq;     textview txtvraag;     radiobutton rda, rdb, rdc;     button butvolgende;     string value;     @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);          bundle extras = getintent().getextras();         if (extras != null) {          value = extras.getstring("continent");         }            dbhelper db=new dbhelper(this);         queslist=db.getallquestions();         currentq=queslist.get(qid);         txtvraag=(textview)findviewbyid(r.id.txtvraag);         rda=(radiobutton)findviewbyid(r.id.antwoord1);         rdb=(radiobutton)findviewbyid(r.id.antwoord2);         rdc=(radiobutton)findviewbyid(r.id.antwoord3);         butvolgende=(button)findviewbyid(r.id.btnvolgende);         setquestionview();         butvolgende.setonclicklistener(new view.onclicklistener() {                   public void onclick(view v) {                 radiogroup grp=(radiogroup)findviewbyid(r.id.grpantwoord);                 radiobutton answer=(radiobutton)findviewbyid(grp.getcheckedradiobuttonid());                 log.d("yourans", currentq.getanswer()+" "+answer.gettext());                 if(currentq.getanswer().equals(answer.gettext()))                 {                     score++;                     log.d("score", "your score"+score);                 }                 if(qid<10){                          currentq=queslist.get(qid);                     setquestionview();                 }else{                     intent intent = new intent(mainactivity.this, resultactivity.class);                     bundle b = new bundle();                     b.putint("score", score); //your score                     intent.putextras(b); //put score next intent                     startactivity(intent);                     finish();                 }             }         });     }     @override     public boolean oncreateoptionsmenu(menu menu) {         // inflate menu; adds items action bar if present.         getmenuinflater().inflate(r.menu.activity_main, menu);         return true;     }     private void setquestionview()     {         txtvraag.settext(currentq.getquestion());         rda.settext(currentq.getopta());         rdb.settext(currentq.getoptb());         rdc.settext(currentq.getoptc());         qid++;     } } 

but questions in class dbhelper:

  package com.laurenswuytsjordipapen.cultural.pursuit; import java.util.arraylist; import java.util.list; import android.content.contentvalues; import android.content.context; import android.database.cursor; import android.database.sqlite.sqlitedatabase; import android.database.sqlite.sqliteopenhelper; public class dbhelper extends sqliteopenhelper {     string continent;     string input;     private static final int database_version = 1;     // database name     private static final string database_name = "dbquiz";     // tasks table name     private static final string table_quest = "quest";     // tasks table columns names     private static final string key_id = "id";     private static final string key_ques = "question";     private static final string key_answer = "answer"; //correct option     private static final string key_opta= "opta"; //option     private static final string key_optb= "optb"; //option b     private static final string key_optc= "optc"; //option c     private sqlitedatabase dbase;     public dbhelper(context context, string input) {         super(context, database_name, null, database_version);         input = continent;     }       @override     public void oncreate(sqlitedatabase db) {          dbase=db;         string sql = "create table if not exists " + table_quest + " ( "                 + key_id + " integer primary key autoincrement, " + key_ques                 + " text, " + key_answer+ " text, "+key_opta +" text, "                 +key_optb +" text, "+key_optc+" text)";         db.execsql(sql);              addquestions();         //db.close();      }           private void addquestions()     {             if(continent.equals("europa")){         vragen q1=new vragen("op welke hooglanden draven er wilde rendieren rond in groot brittanie?","andes gebergte", "schotse hooglanden", "britse hooglanden", "schotse hooglanden");         this.addvraag(q1);         vragen q2=new vragen("in welke italiaanse stad zijn de ponte vechio en het palazzo medici belangrijke bezienswaardigheden??", "milan", "rome", "firenze", "firenze");         this.addvraag(q2);         vragen q3=new vragen("wat het favoriete land van een gallomaan?","frankrijk", "egypte", "duitsland", "frankrijk");         this.addvraag(q3);         vragen q4=new vragen("welke europese hoofdstad net zoals rome op zeven heuvels gebouwd?", "brussel", "parijs", "rome", "brussel");         this.addvraag(q4);         vragen q5=new vragen("wat naast vaticaanstad, monaco, san marino en andorra het vijfde europese ministaatje?","corsica", "luxemburg", "lichtenstein", "lichtenstein");         this.addvraag(q5);         vragen q6=new vragen("aan welke golf ligt de kuststreek tussen marseille en perpignan?", "golf van frankrijk", "golf van lyon", "middellandse zee", "golf van lyon");         this.addvraag(q6);         vragen q7=new vragen("welke nationaliteit heeft hordeloper jonathan n senga?","belgische", "canadees", "ganees", "belgische");         this.addvraag(q7);         vragen q8=new vragen("welke munt werd de alpendollar genoemd?", "oostenrijkse shilling", "bulgaarse lef", "franse frank", "oostenrijkse shilling");         this.addvraag(q8);         vragen q9=new vragen("aan welke natie gaf zanzibar zich in 1896 on na exact 38 minuten oorlog voeren?","engeland", "china", "amerika", "engeland");         this.addvraag(q9);         vragen q10=new vragen("welke stad telde als eerste in de geschiedenis meer dan 1 miljoen inwoners?", "rome", "tokyo", "kopenhagen", "rome");         this.addvraag(q10);             }if(continent.equals("amerika")){                 vragen q1=new vragen("op welke rivier liggen st. louis, memphis en new orleans?","mississippi", "maes", "nijl", "mississippi");                 this.addvraag(q1);                 vragen q2=new vragen("welke amerikaanse countryzanger ooit gehuwd met julia roberts en vertolkte een bakker in robert altmans short cut?", "lyle lovett", "bobby singer", "johnny cowboy", "lyle lovett");                 this.addvraag(q2);                 vragen q3=new vragen("welke 3000km lange rivier vloeit door colombia en venezuela?","orinoco", "seine", "mississippi", "orinoco");                 this.addvraag(q3);                 vragen q4=new vragen("welk land het indiaanse woord voor groot dorp?", "canada", "luxemburg", "cuba", "canada");                 this.addvraag(q4);                 vragen q5=new vragen("tot welke beroemde ecuadoriaanse eilandengroep behoren isla isabela en isla fernandina?","galapagoseilanden", "maladiven", "caraiben", "galapagoseilanden");                 this.addvraag(q5);                 vragen q6=new vragen("wie zette met het schip beagle koers naar de galapagoseilanden en kwam terug met een evolutietheorie?", "charles darwin", "laurens wuyts", "albert einstein", "charles darwin");                 this.addvraag(q6);                 vragen q7=new vragen("in welk land barstte de vulkaan mount st helens in 1980 uit, met 95 doden tot gevolg?","vs", "cuba", "egypte", "vs");                 this.addvraag(q7);                 vragen q8=new vragen("welke indianenstam leefde het meest zuidelijk in amerika:?", "algonkins", "apachen", "sioux", "apachen");                 this.addvraag(q8);                 vragen q9=new vragen("welke promotiefilm voor george w bush moest aangepast worden voor de japanse bioscopen?","pearl harbor", "black hawk down", "star wars", "pearl harbor");                 this.addvraag(q9);                 vragen q10=new vragen("welk droevig lot wachtte de colombiaan andres escobar na zijn own-goal tegen de verenigde staten tijdens het wk voetbal in 1994?", "hij werd doodgeschoten", "hij brak zijn been", "hij kreeg een hartaanval", "hij werd doodgeschoten");                 this.addvraag(q10);              }if(continent.equals("afrika")){                 vragen q1=new vragen("welk land met 600 ton per jaar de belangrijkste goudproducent?","qatar", "zuid-afrika", "china", "zuid afrika");                 this.addvraag(q1);                 vragen q2=new vragen("waar werden de eeuwenoude tempeltorens of ziggurats gebouwd?", "tweestromenland", "egypte", "zuid afrika", "tweestromenland");                 this.addvraag(q2);                 vragen q3=new vragen("welke natie wil het koerdische volk stichten tussen turkije en irak?","koerdistan", "ozomboco", "koerdannie", "koerdistan");                 this.addvraag(q3);                 vragen q4=new vragen("hoe heet de israelische geheime dienst?", "mossad", "seals", "ddk", "mossad");                 this.addvraag(q4);                 vragen q5=new vragen("welke rivier heeft een rosetta en een damiettamonding?","nijl", "maes", "grote nete", "nijl");                 this.addvraag(q5);                 vragen q6=new vragen("welke naam kreeg het kongolese leopoldstad vanaf 1966?", "kinsasha", "zuid-afrika", "marokko", "kinsasha");                 this.addvraag(q6);                 vragen q7=new vragen("welke belangrijke waterweg werd genationaliseerd door het egyptische staatshoofd gamal abdel nasser?","suez kanaal", "straat van gibraltar", "middellandse zee", "suez kanaal");                 this.addvraag(q7);                 vragen q8=new vragen("welke rivier na de nijl de langste van afrika en tevensde naam van een land?", "kongo", "gana", "kenia", "kongo");                 this.addvraag(q8);                 vragen q9=new vragen("in welk werelddeel ligt het land sierra leone?","afrika", "amerika", "azie", "afrika");                 this.addvraag(q9);                 vragen q10=new vragen("wie de enige ramses die met kleinkunst in de annalen van de geschiedenis kwam?", "ramses shaffi", "ramses shisha", "ramses bio", "ramses shaffi");                 this.addvraag(q10);               }if(continent.equals("azie")){                 vragen q1=new vragen("hoe heet de hoofdstad van zuid-korea waar het grote tongdaeum-stadion ligt?","seoel", "hong kong", "tokyo", "seoel");                 this.addvraag(q1);                 vragen q2=new vragen("welk land verrees uit de puinhopen van het ottomaanse rijk?", "turkije", "afghanistan", "egypte", "turkije");                 this.addvraag(q2);                 vragen q3=new vragen("voor welk land behaalde de in bulgarije geboren kleine gewichtheffer naim suleymanoglu de grootste olympische triomfen?","turkije", "bulgarije", "marokko", "turkije");                 this.addvraag(q3);                 vragen q4=new vragen("in welke stad lopen jaarlijks duizenden pelgrims de via dolorosa af?", "jeruzalem", "parijs", "boston", "jeruzalem");                 this.addvraag(q4);                 vragen q5=new vragen("welke uittocht vieren de joden met pasen?","uittocht van joodse volk uit egypte", "geboorte van laurens wuyts", "herrijzenis van jezus", "uittocht van joodse volk uit egypte");                 this.addvraag(q5);                 vragen q6=new vragen("hoe heet de israelische geheime dienst?", "mossad", "seals", "ddk", "mossad");                 this.addvraag(q6);                 vragen q7=new vragen("in welk land nam in 1966 als eerste aziatische land deel aan een wk voetbal?","noord-korea", "zuid-korea", "japan", "noord-korea");                 this.addvraag(q7);                 vragen q8=new vragen("hoe heet het land kanaan tegenwoordig?", "israel", "bosnie", "belgie", "israel");                 this.addvraag(q8);                 vragen q9=new vragen("welke herontdekte oerwoudstad het toppunt van de khmer-beschaving?","angkor", "rusland", "japan", "angkor");                 this.addvraag(q9);                 vragen q10=new vragen("hoe heet de bekendste rivier van thailand?", "kwai", "kwei", "kwoi", "kwai");                 this.addvraag(q10);               }      }     @override     public void onupgrade(sqlitedatabase db, int oldv, int newv) {         // drop older table if existed         db.execsql("drop table if exists " + table_quest);         // create tables again         oncreate(db);     }     // adding new question     public void addvraag(vragen quest) {         //sqlitedatabase db = this.getwritabledatabase();         contentvalues values = new contentvalues();         values.put(key_ques, quest.getquestion());          values.put(key_answer, quest.getanswer());         values.put(key_opta, quest.getopta());         values.put(key_optb, quest.getoptb());         values.put(key_optc, quest.getoptc());         // inserting row         dbase.insert(table_quest, null, values);             }     public list<vragen> getallquestions() {         list<vragen> queslist = new arraylist<vragen>();         // select query         string selectquery = "select  * " + table_quest;         dbase=this.getreadabledatabase();         cursor cursor = dbase.rawquery(selectquery, null);         // looping through rows , adding list         if (cursor.movetofirst()) {             {                 vragen quest = new vragen();                 quest.setid(cursor.getint(0));                 quest.setquestion(cursor.getstring(1));                 quest.setanswer(cursor.getstring(2));                 quest.setopta(cursor.getstring(3));                 quest.setoptb(cursor.getstring(4));                 quest.setoptc(cursor.getstring(5));                 queslist.add(quest);             } while (cursor.movetonext());         }         // return quest list         return queslist;     }     public int rowcount()     {         int row=0;         string selectquery = "select  * " + table_quest;         sqlitedatabase db = this.getwritabledatabase();         cursor cursor = db.rawquery(selectquery, null);         row=cursor.getcount();         return row;     } } 

now when try error:

08-28 22:00:21.112: d/androidruntime(12884): shutting down vm 08-28 22:00:21.122: w/dalvikvm(12884): threadid=1: thread exiting uncaught exception (group=0x413862a0) 08-28 22:00:21.132: e/androidruntime(12884): fatal exception: main 08-28 22:00:21.132: e/androidruntime(12884): java.lang.runtimeexception: unable start activity componentinfo{com.laurenswuytsjordipapen.cultural.pursuit/com.laurenswuytsjordipapen.cultural.pursuit.mainactivity}: java.lang.nullpointerexception 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread.performlaunchactivity(activitythread.java:2121) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread.handlelaunchactivity(activitythread.java:2146) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread.access$700(activitythread.java:140) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread$h.handlemessage(activitythread.java:1238) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.os.handler.dispatchmessage(handler.java:99) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.os.looper.loop(looper.java:137) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread.main(activitythread.java:4944) 08-28 22:00:21.132: e/androidruntime(12884):    @ java.lang.reflect.method.invokenative(native method) 08-28 22:00:21.132: e/androidruntime(12884):    @ java.lang.reflect.method.invoke(method.java:511) 08-28 22:00:21.132: e/androidruntime(12884):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:1038) 08-28 22:00:21.132: e/androidruntime(12884):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:805) 08-28 22:00:21.132: e/androidruntime(12884):    @ dalvik.system.nativestart.main(native method) 08-28 22:00:21.132: e/androidruntime(12884): caused by: java.lang.nullpointerexception 08-28 22:00:21.132: e/androidruntime(12884):    @ com.laurenswuytsjordipapen.cultural.pursuit.dbhelper.addquestions(dbhelper.java:53) 08-28 22:00:21.132: e/androidruntime(12884):    @ com.laurenswuytsjordipapen.cultural.pursuit.dbhelper.oncreate(dbhelper.java:41) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.database.sqlite.sqliteopenhelper.getdatabaselocked(sqliteopenhelper.java:252) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.database.sqlite.sqliteopenhelper.getreadabledatabase(sqliteopenhelper.java:188) 08-28 22:00:21.132: e/androidruntime(12884):    @ com.laurenswuytsjordipapen.cultural.pursuit.dbhelper.getallquestions(dbhelper.java:168) 08-28 22:00:21.132: e/androidruntime(12884):    @ com.laurenswuytsjordipapen.cultural.pursuit.mainactivity.oncreate(mainactivity.java:42) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activity.performcreate(activity.java:5188) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1094) 08-28 22:00:21.132: e/androidruntime(12884):    @ android.app.activitythread.performlaunchactivity(activitythread.java:2085) 08-28 22:00:21.132: e/androidruntime(12884):    ... 11 more 

can guys pls me how can solve ...

thanks in advance!

you swapped assignment around:

public dbhelper(context context, string input) {     super(context, database_name, null, database_version);     input = continent; } 

should be:

public dbhelper(context context, string input) {     super(context, database_name, null, database_version);     continent = input; } 

Comments

Popular posts from this blog

wordpress - (T_ENDFOREACH) php error -

Export Excel workseet into txt file using vba - (text and numbers with formulas) -

Using django-mptt to get only the categories that have items -