database - Android retrieve image from sqlite and pass it to next activity through listview item -
thanks in advance. sucess pass data list view next activity need add image database listview , pass next activity. or if it's easeiest pass image next activity without show in listview.
package com.example.assfar.travel_guide; import java.io.bytearrayinputstream; import java.util.arraylist; import java.util.hashmap; import java.util.list; import com.example.assfar.r; import com.example.assfar.database.dbhelper; import android.app.listactivity; import android.content.intent; import android.database.cursor; import android.database.sqlite.sqlitedatabase; import android.graphics.bitmap; import android.graphics.bitmapfactory; import android.os.bundle; import android.view.view; import android.widget.arrayadapter; import android.widget.imageview; import android.widget.listview; import android.widget.textview; public class travelguide extends listactivity { private dbhelper database; private list<string> guide_title_list= new arraylist<string>(); hashmap<string,string> details= new hashmap<string,string>(); private cursor cursor; string title; integer id; string desc; private imageview imgv; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.travelguide); imgv = (imageview) findviewbyid(r.id.image); database= dbhelper.instance(); sqlitedatabase db= database.getwritabledatabase(); cursor= db.rawquery("select * tour_guide", null); if(cursor!=null) { if(cursor.movetofirst()); { { desc = cursor.getstring(cursor.getcolumnindex("tour_description")); title= cursor.getstring(cursor.getcolumnindex("guide_title")); id= cursor.getint(cursor.getcolumnindex("_id")); guide_title_list.add("" + title +id ); details.put("" + title +id ,title+desc+imgv); } while(cursor.movetonext()); } } this.setlistadapter(new arrayadapter<string>(this,android.r.layout.simple_list_item_1, guide_title_list)); } @override protected void onlistitemclick(listview l, view v, int position, long id) { super.onlistitemclick(l, v, position, id); //string selecteditem= ((textview) v).gettext().tostring(); string selectedvalue= (string) getlistadapter(). getitem(position); string itemtitledesc=(string) details.get(selectedvalue); intent = new intent(travelguide.this, travel_guide_details.class); i.putextra("selected item", selectedvalue); i.putextra("selected item", itemtitledesc); startactivity(i); } }
next activity:
package com.example.assfar.travel_guide; import com.example.assfar.r; import com.example.assfar.database.dbhelper; import android.app.activity; import android.content.intent; import android.graphics.bitmap; import android.graphics.bitmapfactory; import android.os.bundle; import android.widget.imageview; import android.widget.textview; public class travel_guide_details extends activity { private dbhelper database; private textview textview; private imageview imgv; bitmap bmp; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.travel_guide_details); //tour guide description in text view textview = (textview)findviewbyid(r.id.guide_desc); intent i= getintent(); //getting attached intent data string item = i.getstringextra("selected item"); //displaying selected item name textview.settext(item); } }
you can pass image path using intent.putextra("ipath",imagepath)
before calling startactivity(intent)
. , path in next activity. load image now..
Comments
Post a Comment