java - Viewing Items in a ListView from Database -


i'm developing android application in android studio. in function wanted save items in listview database , view in listview on java page. adding elements in arraylist database part ok logcat working. wants view on page. i've implemented code that. when clicked view button not giving response. below i've posted code of dbadapter class , java class. :)

viewhistory.java

public class viewhistoryscr extends activity implements view.onclicklistener{ private button viewhist; private button back; private listview historyview; dbuseradapter dbuseradapter = new dbuseradapter(viewhistoryscr.this); string username = dbuseradapter.key_username;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.historyitmscr);     viewhist = (button) findviewbyid(r.id.viewhistory);     = (button) findviewbyid(r.id.goback);     historyview = (listview) findviewbyid(r.id.historylist);     viewhist.setonclicklistener(this);     back.setonclicklistener(this); }  private void viewhistoryitm(){     cursor cursor = dbuseradapter.viewitm(username);     list<string> values = new arraylist<string>();     if (cursor != null && cursor.movetofirst()){         {             string itmname = cursor.getstring(integer.parseint(dbuseradapter.key_itmname));              //string[]values = new string[]{itmname};             values.add(itmname);             arrayadapter<string> adapter = new arrayadapter<string>(this, r.layout.historyitmscr, r.id.historylist, values);             historyview.setadapter(adapter);             cursor.close();         }         while (cursor.movetonext());     } }  @override public void onclick(view view) {     if (view.getid() == r.id.additems) {         try {             dbuseradapter.open();             viewhistoryitm();             dbuseradapter.close();         } catch (sqlexception e) {             e.printstacktrace();         }     }     else if (view.getid() == r.id.goback){         intent = new intent(viewhistoryscr.this, mainactivity.class);         startactivity(i);     } } } 

dbuseradapter.java


public class dbuseradapter{ public static final string key_rowid = "_id"; public static final string key_username = "username"; public static final string key_password = "password"; public static final string key_passhint = "passhint"; public static final string key_itmname = "itmname"; //public static final string key_itmname = "" public static final string tag = "dbadapter";  string usern = key_username;  string manualuser = key_username;  public static final string database_name = "usersdb"; public static final string database_table = "userinfo"; public static final string itm_database_name = "manualitm"; public static final int database_version = 320;  public static final string database_create = "create table "+database_table+"(username text not null, password text not null, passhint text not null);"; public static final string itm_database_create = "create table "+itm_database_name+"(username text not null, itmname text not null)";  private context context = null; private databasehelper dbhelper; public sqlitedatabase db;  public dbuseradapter(context context){     this.context = context;     dbhelper = new databasehelper(context); }  private static class databasehelper extends sqliteopenhelper{     databasehelper(context context){         super(context, database_name, null, database_version);     }      @override     public void oncreate(sqlitedatabase db) {         db.execsql(database_create);         db.execsql(itm_database_create);     }      @override     public void onupgrade(sqlitedatabase db, int oldversion, int newversion) {         log.w(tag, "upgrading database version "+oldversion+" "+newversion+", destroy old data");         db.execsql("drop table if exists userinfo");         db.execsql("drop table if exists manualitm");         oncreate(db);     } }  public void open() throws sqlexception{     db = dbhelper.getwritabledatabase(); }  public void close(){     db.close(); }  public sqlitedatabase getdatabaseinstance(){     return db; }  public boolean adduser(string username, string password, string passhint){     try {         contentvalues initialvalues = new contentvalues();         initialvalues.put(key_username, username);         initialvalues.put(key_password, password);         initialvalues.put(key_passhint, passhint);         db.insert(database_table, null, initialvalues);         db.close();         return true;     }     catch (exception e){         e.printstacktrace();     }     return false; }  public boolean login(string username, string password) throws sqlexception{     cursor cursor = db.rawquery("select * " + database_table + " username=? , password=?", new string[]{username, password});         if(cursor != null){         if (cursor.getcount() > 0){             return true;         }     }     return false; }  public boolean register(string username, string password, string passhint)throws sqlexception{     cursor cursor = db.rawquery("insert " + database_table + " values('?', '?', '?', '?');", new string[]{username, password, passhint});     if(cursor != null){         if(cursor.getcount() > 0){             return true;         }     }     return false; }   public void insertitm(arraylist<string>itemslist){     try{         db = dbhelper.getwritabledatabase();         (int = 0; < itemslist.size(); a++){             contentvalues contentvalues = new contentvalues();             contentvalues.put(key_itmname, itemslist.get(a));             contentvalues.put(key_username, manualuser);             db.insert(itm_database_name, null, contentvalues);         }         db.close();     }     catch (exception ex){         log.e("error in adding items", ex.tostring());     } }  //public boolean viewitm(string usern){     //string = key_username + "=" + username;  //   cursor cursor = db.rawquery("select * " + itm_database_name + " username=?", new string[]{usern}); //    if(cursor != null){  //       cursor.movetofirst();  //       return true; //    } //    return false; //}  public cursor viewitm(string usern){     cursor cursor = db.rawquery("select * " + itm_database_name + " username=?", new string[]{usern});     if (cursor != null){         cursor.movetofirst();     }     return cursor; } } 

set adpater outside , cursor.close() while loop or each , every time create new adapter , closes cursor,so next time return null,like

 private void viewhistoryitm(){         cursor cursor = dbuseradapter.viewitm(username);         list<string> values = new arraylist<string>();         if (cursor != null && cursor.movetofirst()){             {                 string itmname = cursor.getstring(integer.parseint(dbuseradapter.key_itmname));                  //string[]values = new string[]{itmname};                 values.add(itmname);              }             while (cursor.movetonext());           arrayadapter<string> adapter = new arrayadapter<string>(this, r.layout.historyitmscr, r.id.historylist, values);                 historyview.setadapter(adapter);                 cursor.close();         }     } 

Comments

Popular posts from this blog

1111. appearing after print sequence - php -

java - WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/board/] in DispatcherServlet with name 'appServlet' -

Ruby on Rails, ActiveRecord, Postgres, UTF-8 and ASCII-8BIT encodings -