android - Adapter of ListActivity -
i have problem listactivity
, hope can me. have created adapter
:
public class mylistadapter extends baseadapter { private arraylist<string> lista= new arraylist<string>(); private layoutinflater myinflater; public mylistadapter(context context){ myinflater= (layoutinflater)context.getsystemservice(context.layout_inflater_service); } public void additem(final string item){ lista.add(item); notifydatasetchanged(); } public int getcount() { return lista.size(); } public object getitem(int position) { return lista.get(position); } public long getitemid(int position) { return position; } public view getview(int position, view convertview, viewgroup parent) { viewholder holder= null; if (convertview == null){ convertview= myinflater.inflate(r.layout.index, null); holder= new viewholder(); holder.textview= (textview)convertview.findviewbyid(r.id.empty); holder.checkbox= (checkbox) convertview.findviewbyid(r.id.check); convertview.settag(holder); }else{ holder=(viewholder)convertview.gettag(); } holder.textview.settext(lista.get(position)); holder.textview.setonclicklistener(new onclicklistener() { public void onclick(view view) { intent myintent= new intent (view.getcontext(),chronometer.class); myintent.putextra(name, value) } }); return convertview; }
}
but have problem onclick
in element of list. have 2 problem - when onclick
want pass object... here don't have object textview
, checkbox
- , second when put startactivity
isn't recognizer
i call adapter this:
public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); [...] mylistadapter myadapter= new mylistadapter(getbasecontext()); (meansurement elem : procesos) { myadapter.additem(elem.getname()); } } setlistadapter(myadapter); }
set onitemclicklistener on list, instead of setting onclick on individual textviews:
lista.setonitemclicklistener(new onitemclicklistener() { @override public void onitemclick(adapterview<?> list, view view, int position, long id) { object item = list.getitematposition(position); intent = new intent(youractivity.this, otheractivity.class); i.putextra(applicationconstants.extra_id, item.id); startactivityforresult(i, intent_edit_account); } });
Comments
Post a Comment