2012-07-14 20 views
15

Merhaba, bir görüntü çağrı cihazı oluşturdum ama sayfa görünümünde sayfa numaralarını gösteren çevreleri nasıl gösterebileceğimi bilen varmıyorum, bunun bir göstergesi olduğunu düşünüyorum ama tamamen emin değilim?Android çember göstergesine görünüm göstergesi

heres kod şimdiye kadar benim bakış çağrı cihazı

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

Cevabınız haklı [burada] (http://viewpagerindicator.com/). Bilmeniz gereken her şeyle bir proje örneği var. Hala ihtiyacınız varsa yardım isteyin. – yugidroid

+0

textview ile noktalar oluşturabilir ve viewpager'da sayfanın değişmesine bağlı olarak ilgili noktaları vurgulamak için zamanlayıcıyı kullanabilirsiniz, burada tam koduna bakın http://codesfor.in/android-viewpager-slider-with-indicator/ – Ramees

cevap

14

içerdiğini Eğer ViewPager her sekme için başlıkları veya basit çevre eklemek için Jake Wharton ViewPagerIndicator kullanabilirsiniz.

Jake Wharton, GitHub numaralı telefondan bir grup numune kodu sağladı, ayrıca Jake Wharton'ın sitesindeki usage section adresine de başvurabilirsiniz.

enter image description here

Ayrıca iki görüntüyü (daire veya başka kapalı herhangi başka bir şekil görüntüsünü bir) alın Greendroid library

enter image description here

+0

İlk ekran görüntüsünü nereden alıyorsunuz? Kendin mi uyguladın? Eğer öyleyse, bunun için örnek bir kodunuz var mı? Teşekkürler: D –

+0

@KalaJ Bu, yukarıda belirtilen [kütüphane] 'den (https://github.com/JakeWharton/ViewPagerIndicator). –

0

ait ViewPager ve PageIndicator kullanabilirsiniz. Bir çerçeve düzenini alın, çerçevedeki görüntüyü (gösterge) gösterin. Kullanıcı değiştirdiğinde, görüntü uygun göstergeyi gösterir.

Bunu hayata geçirdim ve iyi çalışıyor. Kodu download koduna yazıp buna göre değiştirebilirsiniz. enter image description here