2012-07-14 26 views
15

Hola, he creado un paginador de vista pero ¿alguien sabe cómo puedo mostrar círculos que representan paginación en una vista de página, creo que es un indicador pero no estoy del todo seguro?Indicador de círculo agregado a Android para viewpager

aquí está el código tan lejos que contiene mi punto de vista localizador

public class LevelSelect extends Activity { 

    private ViewPager awesomePager; 
    private static int NUM_AWESOME_VIEWS = 10; 
    private Context cxt; 
    private AwesomePagerAdapter awesomeAdapter; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.layout_levelselect); 
     cxt = this; 

     awesomeAdapter = new AwesomePagerAdapter(); 
     awesomePager = (ViewPager) findViewById(R.id.viewpager); 
     awesomePager.setAdapter(awesomeAdapter); 
    } 

    private class AwesomePagerAdapter extends PagerAdapter{ 


     @Override 
     public int getCount() { 
      return NUM_AWESOME_VIEWS; 
     } 


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

      LayoutInflater mLayoutInflater = (LayoutInflater) collection.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      final View LeagueButtonView = mLayoutInflater.inflate(R.layout.ls_button, null); 
      Button LeagueButton = (Button) LeagueButtonView.findViewById(R.id.league); 
      LeagueButton.setBackgroundDrawable(getResources().getDrawable(R.drawable.ls_level_eng1_locked)); 
      ((ViewPager) collection).addView(LeagueButtonView,0); 

      return LeagueButtonView; 
     } 


     @Override 
     public void destroyItem(View collection, int position, Object view) { 
      ((ViewPager) collection).removeView((View) view); 
     } 



     @Override 
     public boolean isViewFromObject(View view, Object object) { 
      return view==((View)object); 
     } 


     @Override 
     public void finishUpdate(View arg0) {} 


     @Override 
     public void restoreState(Parcelable arg0, ClassLoader arg1) {} 

     @Override 
     public Parcelable saveState() { 
      return null; 
     } 

     @Override 
     public void startUpdate(View arg0) {} 

    } 
+0

Su respuesta es correcta [aquí] (http://viewpagerindicator.com/). Hay una muestra de proyecto con todo lo que necesita saber. No dude en pedir ayuda si aún la necesita. – yugidroid

+0

puede crear puntos con vista de texto y usar el temporizador para resaltar los puntos correspondientes según el cambio de página en el visor. Consulte el código completo aquí http://codesfor.in/android-viewpager-slider-with-indicator/ – Ramees

Respuesta

14

Usted puede utilizar ViewPagerIndicator de Jake Wharton añadir los títulos o círculos simples para cada pestaña en su ViewPager.

Jake Wharton ha proporcionado un montón de código de muestra en GitHub, también puede consultar el usage section en el sitio de Jake Wharton.

enter image description here

También puede utilizar el ViewPager y PageIndicator de Greendroid library

enter image description here

+0

dónde lo hizo obtienes la primera captura de pantalla? ¿Lo implementó usted mismo? Si es así, ¿tiene un código de muestra para ello? Gracias: D –

+0

@KalaJ Esto es de [la biblioteca] (https://github.com/JakeWharton/ViewPagerIndicator) que se menciona arriba. –

0

Tomar dos imagen (círculo o cualquier otra forma de la imagen de uno para otro para el). Tome la disposición de un marco, muestre la imagen (indicador) en el marco. Cuando el usuario cambie la imagen, muestre el indicador apropiado.

Lo he implementado y funciona bien. Puede download el código y cambiar en consecuencia. enter image description here

Cuestiones relacionadas