2013-06-12 6 views
1

Je développe loader image en rapport application.I voulez charger en vrac de images.So I en utilisant Android Universal Image Loader Le problème est le premier chargement de temps prendre trop time.After que effectuer une recherche rapide ..Améliorer la performance de l'image Universal Android Loader

Je veux effectuer très vite que le temps de chargement de l'application itself.Any une idée ont s'il vous plaît poster ..

ImageLoader look code de classe comme celui-ci

package com.primus.exploretaukymodule; 

import java.util.ArrayList; 
import com.nostra13.universalimageloader.core.DisplayImageOptions; 
import com.nostra13.universalimageloader.core.ImageLoader; 
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; 

import android.content.Context; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.ImageView; 

public class Imageadapter extends BaseAdapter { 

    ArrayList<String> image_path; 

    Context mcontext; 

    LayoutInflater inflater; 

    ImageLoader load; 




    static ImageLoaderConfiguration config ; 



    static DisplayImageOptions imgDisplayOptions = new DisplayImageOptions.Builder() 
    //.showStubImage(R.drawable.stub_image) 
    .cacheInMemory() 
    .cacheOnDisc() 
    //.imageScaleType(ImageScaleType.EXACT) 
    .build(); 

    static ImageLoader imageLoader = ImageLoader.getInstance(); 

    public Imageadapter(Context c, ArrayList<String> imageUrls, ImageLoader loader, DisplayImageOptions options) { 
     // TODO Auto-generated constructor stub 

     image_path=new ArrayList<String>(); 

     image_path=imageUrls; 

     mcontext=c; 

     inflater=(LayoutInflater) mcontext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 

     load=loader; 

     config = new ImageLoaderConfiguration.Builder(c) 
     .enableLogging() 
     .memoryCacheSize(41943040) 
     .discCacheSize(104857600) 
     .threadPoolSize(10) 
     .build(); 

     imageLoader.init(config);   


    } 

    @Override 
    public int getCount() { 
     // TODO Auto-generated method stub 
     return image_path.size(); 
    } 

    @Override 
    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return null; 
    } 

    @Override 
    public long getItemId(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     // TODO Auto-generated method stub 

     ViewHolder holder; 

     if (convertView == null) { 

      holder=new ViewHolder(); 

      convertView= inflater.inflate(R.layout.explore_gridview_layout, parent, false); 

      holder.imageView=(ImageView) convertView.findViewById(R.id.taukytab_grid_image); 

      convertView.setTag(holder); 


     } 
     else { 

      holder=(ViewHolder) convertView.getTag(); 
     } 


     holder.imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 

     imageLoader.displayImage(image_path.get(position),holder.imageView, imgDisplayOptions); 

     return convertView; 
    } 

    class ViewHolder 
    { 
     ImageView imageView; 
    } 

} 

Merci ..

Répondre

0

n'est-ce pas à cause du cache? Si oui, pour charger plus rapidement, vous avez besoin d'une connexion Internet plus rapide ou de stocker des images dans les actifs et vérifier si elles sont là avant de les charger depuis le réseau.

+0

Merci pour replay..yes définitivement mes images charger du web..Je veux savoir toutes les mises à jour de mon code qui fonctionnent vite ou non ??? – Raj

Questions connexes