android - my androidstudio app doesnt display the adapter in the listview -
i parse json
string
website , save arraylist
, when run app, elements don't show in fragment, debug , info save in arraylist
doesn't show it. checked similar topics no 1 has solved problem. here code:
adapter:
package com.example.luiggi.myapplication; import android.app.activity; import android.content.context; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.widget.arrayadapter; import android.widget.textview; import java.util.arraylist; /** * created andre_000 on 6/28/2015. */ public class facturasadapter extends arrayadapter<invoices> { context context; int layoutresourceid; arraylist<invoices> data; public facturasadapter(context context, int layoutresourceid, arraylist<invoices> data) { super(context, layoutresourceid, data); this.layoutresourceid = layoutresourceid; this.context = context; this.data = data; } @override public view getview(int position, view convertview, viewgroup parent) { view row = convertview; facturasholder holder = null; if (row == null) { layoutinflater inflater = ((activity) context).getlayoutinflater(); row = inflater.inflate(layoutresourceid, parent, false); holder = new facturasholder(); holder.shipping_id = (textview) row.findviewbyid(r.id.shipping_id); holder.company_id = (textview) row.findviewbyid(r.id.company_id); holder.user_id = (textview) row.findviewbyid(r.id.user_id); holder.driver_id = (textview) row.findviewbyid(r.id.driver_id); holder.id = (textview) row.findviewbyid(r.id.id); holder.fecha_factura = (textview) row.findviewbyid(r.id.fecha_factura); holder.monto = (textview) row.findviewbyid(r.id.monto); holder.precio_km = (textview) row.findviewbyid(r.id.precio_km); holder.nombre = (textview) row.findviewbyid(r.id.nombre); holder.direccion = (textview) row.findviewbyid(r.id.direccion); holder.telefono = (textview) row.findviewbyid(r.id.telefono); holder.estado = (textview) row.findviewbyid(r.id.estado); row.settag(holder); } else { holder = (facturasholder) row.gettag(); } invoices pedido = data.get(position); holder.shipping_id.settext(pedido.shipping_id); holder.company_id.settext(pedido.company_id); holder.user_id.settext(pedido.user_id); holder.driver_id.settext(pedido.driver_id); holder.id.settext(pedido.id); holder.fecha_factura.settext(pedido.fecha_factura); holder.monto.settext(pedido.monto); holder.precio_km.settext(pedido.precio_km); holder.nombre.settext(pedido.nombre); holder.direccion.settext(pedido.direccion); holder.telefono.settext(pedido.telefono); holder.estado.settext(pedido.estado); //final int pos = position; /*row.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { presupuestosfragment.presupuestoseleccionado = presupuestosfragment.listpresupuestos.get(pos); new presupuestorepuestotask().execute(); } }); */ return row; } static class facturasholder { public textview shipping_id; public textview company_id; public textview user_id; public textview driver_id; public textview id; public textview fecha_factura; public textview monto; public textview precio_km; public textview nombre; public textview direccion; public textview telefono; public textview estado; } }
fragment:
package com.example.luiggi.myapplication; import android.app.activity; import android.net.uri; import android.os.asynctask; import android.os.bundle; import android.support.v4.app.fragment; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.widget.listview; import org.json.jsonarray; import org.json.jsonexception; import java.io.ioexception; import java.net.urisyntaxexception; import java.util.arraylist; public class facturasfragments extends fragment { view rootview; private listview listfacturas; //public static presupuestos presupuestoseleccionado; //public static arraylist<presupuestorepuesto> presupuestorepuesto; @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { rootview=inflater.inflate(r.layout.facturas_fragments, container, false); listfacturas = (listview)rootview.findviewbyid(r.id.listfacturas); jsonclass conexion = new jsonclass(); conexion.execute(); return rootview; } public class jsonclass extends asynctask<void, void, string> { public arraylist<invoices> listfacturas; @override protected string doinbackground(void... params) { webrequest facturas = null; try { facturas = new webrequest( "http://gruasochoa.herokuapp.com/invoiceapi/index.json" ); } catch (ioexception e) { e.printstacktrace(); return null; } catch (urisyntaxexception e) { e.printstacktrace(); return null; } return facturas.getresponse(); } @override protected void onpostexecute(final string result) { //if (result != null) { //log.v("prueba",result); listfacturas = stringtofacturas(result); listfacturas.setadapter(new facturasadapter(getactivity(),r.layout.facturasadapterview, listfacturas)); //} else { //} } // todo: convertir string json y luego arraylist<presupuestos> private arraylist<invoices> stringtofacturas(string result) { arraylist<invoices> listfacturas = new arraylist<invoices>(); try { jsonarray presupuestos = new jsonarray(result); (int = 0; < presupuestos.length(); i++) { //jsonarray p = presupuestos.getjsonobject(i).getjsonarray("presupuestos"); //for (int j = 0; j < p.length(); j++) { invoices invoice = new invoices( presupuestos.getjsonobject(i).getstring("id"), presupuestos.getjsonobject(i).getstring("shipping_id"), presupuestos.getjsonobject(i).getstring("company_id"), presupuestos.getjsonobject(i).getstring("user_id"), presupuestos.getjsonobject(i).getstring("driver_id"), presupuestos.getjsonobject(i).getstring("fecha_factura"), presupuestos.getjsonobject(i).getstring("monto"), presupuestos.getjsonobject(i).getstring("precio_km"), presupuestos.getjsonobject(i).getstring("nombre"), presupuestos.getjsonobject(i).getstring("direccion"), presupuestos.getjsonobject(i).getstring("telefono"), presupuestos.getjsonobject(i).getstring("estado") //p.getjsonobject(j).getjsonobject("usuario").getstring("correo") + " (" + p.getjsonobject(j).getjsonobject("usuario").getstring("nombre") + " " + p.getjsonobject(j).getjsonobject("usuario").getstring("apellido") + ")" ); listfacturas.add(invoice); //} } //jsonobject jsonresponse = new jsonobject(result); //log.v("finaparty", result); //log.v("finaparty", presupuestos.getjsonobject(0).getstring("fecha_registro")); //log.v("finaparty", presupuestos.getjsonobject(0).getjsonarray("presupuestos").getjsonobject(0).getstring("id_usuario")); } catch (jsonexception e) { e.printstacktrace(); } return listfacturas; } } }
fragment xml:
<!-- todo: update blank fragment layout --> <listview android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/listfacturas" android:layout_gravity="center_horizontal|top" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="0dp" />
adapter xml:
<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content"> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/shipping_id" android:layout_gravity="bottom" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="0dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/company_id" android:layout_gravity="center_vertical" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="52dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/user_id" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="104dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/driver_id" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="156dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/id" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="208dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/fecha_factura" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="260dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/monto" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="312dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/precio_km" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="364dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/nombre" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="416dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/direccion" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="468dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/telefono" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="520dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancelarge" android:text="large text" android:id="@+id/estado" android:layout_alignparentleft="true" android:layout_marginleft="0dp" android:layout_alignparenttop="true" android:layout_margintop="572dp" /> </relativelayout>
Comments
Post a Comment