2014-09-29 20 views
6

Rozetin konseptinde yeniyim. Uygulamamda rozetleri bir sekmede göstermek istiyorum. Bunun için ben 4 sekmeleri ile iyi çalışıyor Android ViewBadger android-viewbadger.jar dosyasınıTabhost-Rozet konumunu sekmelerde ayarlayın Android

TabWidget tabs = (TabWidget) findViewById(android.R.id.tabs); 
    badge1 = new BadgeView(this, tabs, 1); 
    badge1.setText("155"); 
    badge1.setBadgePosition(BadgeView.POSITION_BOTTOM_RIGHT); 
    badge1.toggle(); 

enter image description here

kullanılan burada bir kez daha sekme eklediğinizde bu

enter image description here benzeyecek

i var zaten bu rozeti özelliklerini kullanmak

badge1.setPadding(left, top, right, bottom); 
    badge1.setTextSize(15); 
    badge1.setBadgeMargin(5,5); 
    badge1.setWidth(10); 
+0

http://kevinpelgrims.com/blog/2014/06/24/adding-a-badge-to -an-İşlem Çubuğu-tab – Shijil

cevap

1

TabWidget öğesinde rozeti ayarlamak yalnızca taslak ile Çizelge'nin sınırı arasındaki boşluğun içinde gösterecektir, böylece daha fazla sekme eklemek rozeti sıkıştırır. Bunun yerine (String, Drawable) setIndicator kullanarak, şunu deneyin:

ImageView iv = new ImageView(this); 
    iv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT)); 
    iv.setImageResource(R.drawable.whoseinterested); 
    whosespec.setIndicator(iv); 
    Intent whoseIntent = new Intent(this, BlankActivity.class); 
    whosespec.setContent(whoseIntent); 

    tabHost.addTab(whosespec); 

    badge1 = new BadgeView(this, iv); 
    badge1.setText("155"); 
    badge1.setTextSize(15); 
    badge1.setBadgeBackgroundColor(Color.BLACK); 
    badge1.setTextColor(Color.WHITE); 
    badge1.toggle(); 

Ekran Görüntüsü: Sen rozetli sekmede görüntü merkezine doğru kaydırılır sizin ekran görüntüsünde açıkça görebilirsiniz screen

. Resim ile sekme sınırı arasında boşluk yoksa, düzgün görüntülenmeyecektir.

Kaynak: Kendim test edilmiş.

+0

bu mükemmel cevap ve u çok teşekkür ederim @berserk bir cazibe –

+1

o :) yardımcı @AliAshiq memnun – berserk

1

Merhaba deneyin imageview

sekmesini bakış çocukta rozeti ayarlamak bu

TabWidget tabsw = (TabWidget) rootView.findViewById(android.R.id.tabs); 
     ViewGroup viewgroup = (ViewGroup) tabsw.getChildAt(0); 
     viewgroup.getChildCount(); 

     for (int i = 0; i < viewgroup.getChildCount(); i++) { 
      if (viewgroup.getChildAt(i) instanceof ImageView) { 
       ImageView new_name = (ImageView) viewgroup.getChildAt(i); 
       badge7 = new BadgeView(getActivity(),new_name); 
       badge7.setText("9"); 
       badge7.setTextSize(9); 
       badge7.setBadgeMargin(0,0); 
       badge7.setBadgePosition(BadgeView.POSITION_TOP_RIGHT); 
       badge7.toggle(); 

      } 
     } 
+0

http://stackoverflow.com/questions/26402748/tabhost-android-viewbadger-badge gibi çalışmak olduğunu - 0ue bu soruya bir bakın @calinbros –