Foros del Web » Programando para Internet » Android »

Problema al inflatar un xml para realizar un CursorAdapter

Estas en el tema de Problema al inflatar un xml para realizar un CursorAdapter en el foro de Android en Foros del Web. Buenas llevo un par de dias intentando descubrir el porque de este error y no consigo dar con ello. Tengo que realizar una agenda de ...
  #1 (permalink)  
Antiguo 06/02/2016, 06:24
 
Fecha de Ingreso: julio-2015
Mensajes: 85
Antigüedad: 9 años, 4 meses
Puntos: 4
Problema al inflatar un xml para realizar un CursorAdapter

Buenas

llevo un par de dias intentando descubrir el porque de este error y no consigo dar con ello. Tengo que realizar una agenda de contactos los cuales guardo en una base de datos de SQLite, hasta ahi todo bien se guarda y hago la consulta y recibo los datos, el problema viene al intentar meter esos datos en la ListView y el error que me lanza se produce en esta linea:
Código Java:
Ver original
  1. View rlContacto = inflater.inflate(R.layout.contacto, parent);
me da un error, siendo el R.layout.contacto mi xml plantilla.

contacto.xml:
Código XML:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3.    android:orientation="horizontal"
  4.    android:layout_width="match_parent"
  5.    android:layout_height="match_parent">
  6.  
  7.    <ImageView
  8.        android:layout_width="wrap_content"
  9.        android:layout_height="wrap_content"
  10.        android:id="@+id/ivIcono"
  11.        android:background="@drawable/ic_persona"/>
  12.     <LinearLayout
  13.        android:layout_width="match_parent"
  14.        android:layout_height="wrap_content"
  15.        android:orientation="vertical">
  16.  
  17.         <TextView
  18.            android:layout_width="wrap_content"
  19.            android:layout_height="wrap_content"
  20.            android:text="@string/nombre"
  21.            android:id="@+id/tvNombre"
  22.            android:padding="10dp"/>
  23.  
  24.         <TextView
  25.            android:layout_width="wrap_content"
  26.            android:layout_height="wrap_content"
  27.            android:text="@string/telefono"
  28.            android:id="@+id/tvTelefono"
  29.            android:padding="10dp"/>
  30.     </LinearLayout>
  31.  
  32.    
  33.  
  34. </LinearLayout>


Cuando hago estos pasos en el onCreate de mi MainActivity:

Código Java:
Ver original
  1. ManejaBD.inicializaBD(this);//Metodo estatico que inicializa la base de datos
  2.         cursor = ManejaBD.consulta();//Metodo estatico que hace la consulta a la base de datos y retorna el cursor
  3.  
  4.         adaptador = new Adaptador(getApplicationContext(), cursor);
  5.         lista.setAdapter(adaptador); //En este punto se ejecuta el    public View newView el metodo en el cual se encuentra la linea del error.

Metodo public View newView:

Código Java:
Ver original
  1. @Override
  2.     public View newView(Context context, Cursor cursor, ViewGroup parent) {
  3.  
  4.         LayoutInflater inflater = LayoutInflater.from(parent.getContext());
  5.         View rlContacto = inflater.inflate(R.layout.contacto, parent); //Esta linea es la que me lanza el error
  6.         return rlContacto;
  7.     }

El error que me devuelve es el siguiente:

android.view.InflateException: Binary XML file line #34: addView(View, LayoutParams) is not supported in AdapterView

Siendo esa Linea 34 que marca la ultima linea del contactos.xml y aun sigo sin entender el porque del fallo he buscado por internet y no he encontrado nada sobre ese caso he cogido xml en ejemplos de un corsorAdapter que a ellos les funciona y tampoco lo inflata es decir culpa del xml no es pero no se ya por donde cogerlo

Etiquetas: bd, layout, listview, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:24.