i have problem , it's 10 days working , can't solve it.i made layout each row listview.this layout contains linearlayout there textview , webview inside it.now need c# project can add new row listview new text , url whenever want.for example: button.click { listview.add(resource.layout.items, "text","url")}..i know command wrong. wanted clear problem you. khnow it's custom row layout , read manny examples @ site other sites , xamarin site that,adapters,... can't it. :( please answer me correctly. important me. lot.
you need create adapter can work custom objects items. following sample:
public class myadapter : baseadapter<myitem> { readonly layoutinflater inflater; list<myitem> myitemlist; public myadapter(context context) { inflater = layoutinflater.fromcontext(context); myitemlist = your_datasource.getmyitems(); } public override myitem [int index] { { return myitemlist[index]; } } public override int count { { return myitemlist.count; } } public override long getitemid(int position) { return position; } public override view getview(int position, view convertview, viewgroup parent) { view view = convertview ?? inflater.inflate(resource.layout.myitemlayout, parent, false); var item = myitemlist[position]; var viewholder = view.tag myviewholder; if (viewholder == null) { viewholder = new myviewholder(); viewholder.web = view.findviewbyid<webview>(resource.id.myitemlayout_icon); viewholder.name = view.findviewbyid<textview>(resource.id.myitemlayout_title); view.tag = viewholder; } viewholder.web.url = item.url; //you need check how have set url webview viewholder.name.text = item.text; return view; } public override void notifydatasetchanged() { myitemlist = your_datasource.getmyitems(); base.notifydatasetchanged(); } } class myviewholder : java.lang.object { public webview web { get; set; } public textview name { get; set; } } you apply adapter listview listview.adapter = new myadapter(activity);. each time change item in button click event, tricker (listview.adapter myadapter).notifydatasetchanged(); force adapter reload , refresh data.
your_datasource represents point in code store informations url or text of items. typically database or similar. while getmyitems() method example query database.
hope clears things up.
Comments
Post a Comment