android - Add SQLite database data to Listview -
i checked out tutorial: http://www.androidhive.info/2011/11/android-sqlite-database-tutorial/
now want load data in listview. here try:
private arrayadapter<contact> adapter; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); databasehandler db = new databasehandler(this); /** * crud operations * */ // inserting contacts log.d("insert: ", "inserting .."); db.addcontact(new contact("ravi", "9100000000")); db.addcontact(new contact("srinivas", "9199999999")); db.addcontact(new contact("tommy", "9522222222")); db.addcontact(new contact("karthik", "9533333333")); // reading contacts log.d("reading: ", "reading contacts.."); list<contact> contacts = db.getallcontacts(); (contact cn : contacts) { string log = "id: " + cn.getid() + " ,name: " + cn.getname() + " ,phone: " + cn.getphonenumber(); // writing contacts log log.d("name: ", log); } // create adapter using cursor pointing desired data //as layout information adapter = new arrayadapter<contact>(getapplicationcontext(), r.layout.list_view, contacts); listview listview = (listview) findviewbyid(r.id.list); // assign adapter listview listview.setadapter(dataadapter); } so class contact can see in url androidhive.
well thing supplying contact arrayadapter ,but needs string populate values
or use customadapter popluate vaues regarding contact in list
1.create layout single item,in case create list_item.xml in layout folder
list_item.xml
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="80dp" android:padding="6dip" > <textview android:id="@+id/contactname" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textsize="15sp" /> <textview android:id="@+id/contactphone" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textsize="16sp" /> </relativelayout> 2.create customadapter extends arrayadapter
customadapter.java
public class customadapter extends arrayadapter<contacts> { private final context context; private arraylist<contacts> contacts; public customadapter(context context,arraylist<contacts> contacts) { super(context, r.layout.list_item, values); this.context = context; this.contacts= contacts; } @override public view getview(int position, view convertview, viewgroup parent) { layoutinflater inflater = (layoutinflater) context .getsystemservice(context.layout_inflater_service); view rowview = inflater.inflate(r.layout.list_item, parent, false); textview name= (textview) rowview.findviewbyid(r.id.contactname); textview mobile= (textview) rowview.findviewbyid(r.id.contactphone); name.settext(contacts.get(position).getname()); mobile.settext(contacts.get(position).getphonenumber()); return rowview; } } 3.call adpater activity
customadapter adapter = new customadapter (getapplicationcontext(),contacts); listview listview = (listview) findviewbyid(r.id.list); // assign adapter listview listview.setadapter(adapter);
Comments
Post a Comment