Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 26/01/15, 21:19:15
Array

[xs_avatar]
mcnudi mcnudi no está en línea
Usuario novato en la web
 
Fecha de registro: ene 2015
Mensajes: 1
Tu operador: Movistar

lista con adapter personalizado

Hola
estoy haciendo un list View para mostrar un lista q contiene 2 campos y un campo imagen. Resulta que con las imágenes cuando llevo unas cuantas cargadas me aparece el error en el log java OutOfMemoryError. Lo estoy haciendo con un adapter personalizado que extiende de baseAdapter. ¿Me podeis ayudar??

os paso el adapter:
public class ItemSitioAdapter extends BaseAdapter {
protected Activity activity;
protected ArrayList<DescrLista> items;
static class ViewHolder
{
TextView nombre;
TextView descripcion;
ImageView imagen;
}
 
public ItemSitioAdapter(Activity activity, ArrayList<DescrLista> items) {
this.activity = activity;
this.items = items;
}
@Override
public int getCount() {
return items.size();
}
@Override
public DescrLista getItem(int position) {
return items.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@SuppressLint("NewApi")
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;
ViewHolder holder;
if(convertView == null) {
LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_ SERVICE);
vi = inflater.inflate(R.layout.list_item, null);
holder = new ViewHolder();
holder.nombre = (TextView) vi.findViewById(R.id.nombreI);
holder.imagen = (ImageView) vi.findViewById(R.id.imagenI);
holder.descripcion = (TextView) vi.findViewById(R.id.descripI);
vi.setTag(holder);
}
else{
convertView.getTag();
}
if (items.size()>position) {
DescrLista item = items.get(position);
if (item.getFoto()!=null && !item.getFoto().equals("")){
ImageView image = (ImageView) vi.findViewById(R.id.imagenI);
File fichero = new File(item.getFoto());
if (fichero.exists()){
try{
image.setImageURI(Uri.parse(item.getFoto()));
}catch(OutOfMemoryError e){
}
}
}
if (item.getNombre()!=null && !item.getNombre().equals("")){
TextView nombre = (TextView) vi.findViewById(R.id.nombreI);
nombre.setText(item.getNombre());
}
if (item.getDescripcion()!=null && !item.getDescripcion().equals("")){
TextView descripc = (TextView) vi.findViewById(R.id.descripI);
descripc.setText(item.getDescripcion());
}
}
return vi;
 
}
}
Responder Con Cita


Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android

Herramientas


Hora actual: 05:07:57 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /