android - java.lang.RuntimeException: Unable to start activity ComponentInfo -


i'm trying update data sqlite database shows null pointer exception @ line isupdate= getintent().getextras().getboolean("update"); in expense.java

plz me find out error.

here expense.java

public class expenses extends activity  {  databasehelper mydb;  private calendar calendar; private int year, month, day; button add; edittext amt, dte, spinner; textview tbal; string id, categ, amount, date; private sqlitedatabase database; boolean isupdate;  protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.expenseactivity);     calendar = calendar.getinstance();     year = calendar.get(calendar.year);     month = calendar.get(calendar.month);     day = calendar.get(calendar.day_of_month);      mydb = new databasehelper(this);     add = (button) this.findviewbyid(r.id.button);      spinner = (edittext) this.findviewbyid(r.id.spinner);     amt = (edittext) this.findviewbyid(r.id.edittext3);     dte = (edittext) this.findviewbyid(r.id.edittext4);   isupdate= getintent().getextras().getboolean("update");     if (isupdate) {         id = getintent().getextras().getstring("id");         date = getintent().getextras().getstring("dte");         amount = getintent().getextras().getstring("expenses");         categ = getintent().getextras().getstring("catery");         amt.settext(amount);         dte.settext(date);         spinner.settext(categ);      }      add.setonclicklistener((view.onclicklistener) this);      mydb = new databasehelper(this);      add.setonclicklistener(new view.onclicklistener()      {         @override         public void onclick(view v) {             categ = spinner.gettext().tostring();             amount = amt.gettext().tostring();             date = dte.tostring();             if (categ.length() > 0 && amount.length() > 0 && date.length() > 0) {                 savedata();             } else {                 alertdialog.builder alertbuilder = new alertdialog.builder(expenses.this);                 alertbuilder.settitle("invalid data");                 alertbuilder.setmessage("please, enter valid data");                 alertbuilder.setpositivebutton("ok", new dialoginterface.onclicklistener() {                      public void onclick(dialoginterface dialog, int which) {                         dialog.cancel();                      }                 });                 alertbuilder.create().show();             }         }     });       cursor res = mydb.sum();      if (res.getcount() == 0) {         tbal.settext("balance: 0");     } else {         while (res.movetonext()) {             tbal.settext("balance:" + res.getstring(0) + "\n");         }          /**          * save data sqlite          */           dte.setonclicklistener(new view.onclicklistener() {              public void onclick(view v) {                 setdate(dte);             }          });      }   }  @suppresswarnings("deprecation")  public void setdate(view view) {     showdialog(999);  }  @override protected dialog oncreatedialog(int id) {     // todo auto-generated method stub     if (id == 999) {         return new datepickerdialog(this, mydatelistener, year, month, day);     }     return null; }  private datepickerdialog.ondatesetlistener mydatelistener = new datepickerdialog.ondatesetlistener() {     @override     public void ondateset(datepicker arg0, int arg1, int arg2, int arg3) {         // todo auto-generated method stub               showdate(arg1, arg2+1, arg3);     } };   private void showdate(int year, int month, int day) {  date.settext(new stringbuilder().append(day).append("/")      .append(month).append("/").append(year));    } // savebutton click event  private void savedata() {     mydb = new databasehelper(this);      database = mydb.getwritabledatabase();      contentvalues contentvalues = new contentvalues();      contentvalues.put(databasehelper.t2col_1, categ);     contentvalues.put(databasehelper.t2col_2, amount);     contentvalues.put(databasehelper.t2col_3, date);      system.out.println("");     boolean isupdate = getintent().getextras().getboolean("update");     if (isupdate) {         //update database new data         database.update(databasehelper.table_name2, contentvalues, databasehelper.key_id + "=" + id, null);     } else {         //insert data database         database.insert(databasehelper.table_name2, null, contentvalues);     }     //close database     database.close();     finish();  } } 

here display.java

private arraylist<string> exp = new arraylist<string>(); private arraylist<string> categy = new arraylist<string>(); private arraylist<string> dt = new arraylist<string>(); private arraylist<string> id = new arraylist<string>(); private listview userlist; private alertdialog.builder build;   protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.display);     mhelper = new databasehelper(this);     userlist = (listview) findviewbyid(r.id.list);      database = mhelper.getwritabledatabase();      userlist.setonitemclicklistener(new adapterview.onitemclicklistener() {          public void onitemclick(adapterview<?> arg0, view arg1, int arg2,                                 long arg3) {              intent = new intent(getapplicationcontext(),                     expenses.class);             i.putextra("update", true);             i.putextra("id",id.get(arg2));             i.putextra("dte", dt.get(arg2));             i.putextra("expenses", exp.get(arg2));            i.putextra("catery", categy.get(arg2));               startactivity(i);          }     });   @override protected void onresume() {     displaydata();     super.onresume(); }  private void displaydata() {        cursor mcursor = database.rawquery("select * "             + databasehelper.table_name2, null);     id.clear();     exp.clear();     categy.clear();     dt.clear();     if (mcursor.movetofirst()) {         {             id.add(mcursor.getstring(mcursor.getcolumnindex(databasehelper.key_id)));             exp.add(mcursor.getstring(mcursor.getcolumnindex(databasehelper.t2col_1)));             categy.add(mcursor.getstring(mcursor.getcolumnindex(databasehelper.t2col_2)));             dt.add(mcursor.getstring(mcursor.getcolumnindex(databasehelper.t2col_3)));          } while (mcursor.movetonext());     }     displayadapter disadpt = new displayadapter(display.this,id,exp, categy, dt);     userlist.setadapter(disadpt);     mcursor.close(); } } 

here expenseactivity:

android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical">     <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="category"     android:id="@+id/textview2"   />   <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="amount"     android:id="@+id/textview3"    />  <edittext     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/edittext3"     />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="date"     android:id="@+id/textview4"     />  <edittext     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/edittext4"     />  <button     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="add"     android:id="@+id/button"     />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/textview5"    />  <edittext     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/spinner"      />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/textview2"     /> 


Comments

Popular posts from this blog

php - How to display all orders for a single product showing the most recent first? Woocommerce -

asp.net - How to correctly use QUERY_STRING in ISAPI rewrite? -

angularjs - How restrict admin panel using in backend laravel and admin panel on angular? -