0

Wie kann ich einen Fortschrittsbalken zu einem ViewPager in Android hinzufügen?How to Add Fortschrittsbalken zu ViewPager in Android

Mein Szenario ist, dass ich ImageURL in einem ViewPager laden muss. Wenn der Benutzer den Pager wischt, wenn die ImageURL nicht geladen ist, muss ich das Fortschrittsbalken/Laden des GIF-Bildes anzeigen.

Ist es möglich?

+0

Versuchen Sie 'Lazy Loading' in Ihrem Szenario zu verwenden.In diesem Zeug verwenden Sie normale Priorität Thread, der Ihr Bild im Hintergrund rendert.Versuchen Sie, Fortschrittsdialog statt Fortschrittsanzeige in Ihrem Fall zu verwenden. –

Antwort

2

Ich denke, Satya dachte im Folgenden an so etwas.

@Override 
      public Object instantiateItem(View collection, final int position) { 

       LayoutInflater inflater = (LayoutInflater) collection.getContext() 
         .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 


       final FrameLayout imageLayout = (FrameLayout) inflater.inflate(R.layout.fotopager_buttons, null); 
       final ImageView imageView = (ImageView) imageLayout.findViewById(R.id.image); 
       final ProgressBar spinner = (ProgressBar) imageLayout.findViewById(R.id.loading); 

       imageLoader.displayImage(Gallery.get_big_image_url(position), imageView, options, new ImageLoadingListener() { 
        @Override 
        public void onLoadingStarted() { 
        spinner.setVisibility(View.VISIBLE); 
        } 

        @Override 
        public void onLoadingFailed() { 
        spinner.setVisibility(View.GONE); 
        imageView.setImageResource(android.R.drawable.ic_delete); 
        } 

        @Override 
        public void onLoadingComplete() { 
        spinner.setVisibility(View.GONE); 
        } 
        }); 


       views.put(position, iv); 

       ((ViewPager) collection).addView(imageLayout,0); 

       return imageLayout; 
} 

Und die R.layout.fotopager_buttons.xml wie folgt aus::

<?xml version="1.0" encoding="utf-8"?> 

<ImageView 
    android:id="@+id/image" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:adjustViewBounds="true" /> 

<ProgressBar 
    android:id="@+id/loading" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center"/> 

Sie In Ihrem viewpager Adapter-Klasse sollten Sie diese Methode haben kann den Rest der imageLoader Klasse hier sehen: https://github.com/nostra13/Android-Universal-Image-Loader/blob/master/UniversalImageLoaderExample/src/com/nostra13/example/universalimageloader/ImagePagerActivity.java

+0

Dies ist, was ich genau brauche..bunch danke mein Freund –

+0

Hier ist ein Problem am Erhalten von Laufzeit Ausnahme .. Zeigt, dass Konfiguration = null –

+0

Nun, ich habe gerade ein Stück des vollständigen Codes veröffentlicht. Lassen Sie uns versuchen, den Rest in dem angehängten Link zu überprüfen. – Zappescu

0

Sie könnten versuchen, das in Ihrer eigenen Ansicht zu handhaben, anstatt es mit dem Viewpager zu verbinden.

+0

@Sathya: wie ist das möglich, könntest du es erklären oder ein paar Proben da !!! –