Empty values in my SQLite table (Android) -


whenever press 'done' button cardview's title empty. occurred when moved list in singleton sqlite.

addwallpaperfragment form user enters title of card. when hit 'done' button returns them main activity (wallpaperlistfragment), recyclerview/cardview, each card has title.

wallpaperlab handles adding , getting wallpaper(s) database.

wallpaperlab

public void addwallpaper(wallpaper w) {     contentvalues contentvalues = getcontentvalues(w);     mdatabase.insert(wallpapertable.name, null, contentvalues); }   public void updatewallpaper(wallpaper wallpaper) {     string uuidstring = wallpaper.getid().tostring();     contentvalues values = getcontentvalues(wallpaper);      mdatabase.update(wallpapertable.name, values,             wallpapertable.cols.uuid + " = ?",             new string[] { uuidstring }); }  private wallpapercursorwrapper querywallpapers(string whereclause, string[] whereargs) {     cursor cursor = mdatabase.query(             wallpapertable.name,             null,             whereclause,             whereargs,             null,             null,             null     );      return new wallpapercursorwrapper(cursor); }  } 

addwallpaperfragment

@override public void oncreate(@nullable bundle savedinstancestate) {     super.oncreate(savedinstancestate);     sethasoptionsmenu(true); }  @override public void onpause() {     super.onpause();      wallpaperlab.get(getactivity()).updatewallpaper(mwallpaper); }  @nullable @override public view oncreateview(layoutinflater inflater, @nullable viewgroup container, @nullable bundle savedinstancestate) {     view v = inflater.inflate(r.layout.fragment_add_wallpaper, container, false);      wallpaperid = (uuid) getactivity()             .getintent().getserializableextra(addwallpaperactivity.extra_wallpaper_id);     mwallpaper = wallpaperlab.get(getactivity()).getwallpaper(wallpaperid);      mwallpapertitleedittext = (edittext) v.findviewbyid(r.id.add_wallpaper_title);     mwallpapertitleedittext.settext(mwallpaper.gettitle());      return v; }  @override public boolean onoptionsitemselected(menuitem item) {     switch (item.getitemid()) {         case r.id.done_wallpaper:             currentwallpapertitle = mwallpapertitleedittext.gettext().tostring();             if (currentwallpapertitle.equals("")) {                 toast.maketext                         (getactivity(), r.string.toast_no_title, toast.length_short).show();             } else {                 // set title                 wallpaper mwallpaper = wallpaperlab.get(getactivity()).getwallpaper(wallpaperid);                 mwallpaper.settitle(currentwallpapertitle);                 toast.maketext(getactivity(), mwallpaper.gettitle(), toast.length_short).show();                 navutils.navigateupfromsametask(getactivity());             }             return true;         default:             return super.onoptionsitemselected(item);     } } } 

wallpaperlistfragment

@override public view oncreateview(layoutinflater inflater, @nullable viewgroup container, @nullable bundle savedinstancestate) {     view view = inflater.inflate(r.layout.fragment_wallpaper_list, container, false);      mwallpaperrecyclerview = (recyclerview) view.findviewbyid(r.id.wallpaper_recycler_view);     mwallpaperrecyclerview.sethasfixedsize(true);     mwallpaperrecyclerview.setlayoutmanager(new linearlayoutmanager(getactivity()));      updateui();      return view; }  @override public void onresume() {     super.onresume();     updateui(); }  @override public void oncreateoptionsmenu(menu menu, menuinflater inflater) {     super.oncreateoptionsmenu(menu, inflater);     inflater.inflate(r.menu.fragment_wallpaper_list, menu); }  @override public boolean onoptionsitemselected(menuitem item) {     switch (item.getitemid()) {         case r.id.new_wallpaper:             wallpaper wallpaper = new wallpaper();             wallpaperlab.get(getactivity()).addwallpaper(wallpaper);             intent intent =                     addwallpaperactivity.newintent(getactivity(), wallpaper.getid());             startactivity(intent);             return true;         default:             return super.onoptionsitemselected(item);     } }  private void updateui() {     wallpaperlab wallpaperlab = wallpaperlab.get(getactivity());     list<wallpaper> wallpapers = wallpaperlab.getwallpapers();      if (mwallpaperadapter == null) {         mwallpaperadapter = new wallpaperadapter(wallpapers);         mwallpaperrecyclerview.setadapter(mwallpaperadapter);     } else {         mwallpaperadapter.setwallpapers(wallpapers);         mwallpaperadapter.notifydatasetchanged();     }  }  private class wallpaperholder extends recyclerview.viewholder implements view.onclicklistener {      public void bind(wallpaper wallpaper) {         mwallpaper = wallpaper;         mtitletextview.settext(mwallpaper.gettitle());     } }  private class wallpaperadapter extends recyclerview.adapter<wallpaperholder> {     public void setwallpapers(list<wallpaper> wallpapers) {         mwallpapers = wallpapers;     } } } 

schema/contract:

public class wallpaperdbschema { public static final class wallpapertable {     public static final string name = "wallpapers";      public static final class cols {         public static final string uuid = "uuid";         public static final string title = "title";     } } } 

cursorwrapper:

public wallpaper getwallpaper() {     string uuidstring = getstring(getcolumnindex(wallpapertable.cols.uuid));     string title = getstring(getcolumnindex(wallpapertable.cols.title));      wallpaper wallpaper = new wallpaper(uuid.fromstring(uuidstring));     wallpaper.settitle(title);      return wallpaper; } } 

sqliteopenhelper:

@override public void oncreate(sqlitedatabase db) {     db.execsql("create table " + wallpapertable.name + "(" +         " _id integer primary key autoincrement, " +         wallpapertable.cols.uuid + ", " +         wallpapertable.cols.title +             ")"     ); }  } 


Comments

Popular posts from this blog

php - Permission denied. Laravel linux server -

google bigquery - Delta between query execution time and Java query call to finish -

python - Pandas two dataframes multiplication? -