Android Tabhost中tab添加数字demo

好多人问怎么实现tab上有数字,其实很简单实现方法有很多,这里有布局实现吧,只是demo,希望大家明白原理res/drawable/shapecount.xml
  
<?xml version="1.0" encoding="utf-8"?>   
<shape   
  xmlns:android="http://schemas.android.com/apk/res/android"  
   android:shape="rectangle">   
  <corners android:radius="20dp"  />       
<solid android:color="#ff2233" />   
</shape>  

res/layout/tabicon.xml   
  
<RelativeLayout   
   android:orientation="vertical"  
    android:background="@null"  
   android:id="@+id/rlayout"  
   android:layout_width="wrap_content"  
    android:layout_height="wrap_content" >   
    <ImageView    
          android:id="@+id/icon"  
          android:src="@android:drawable/ic_menu_mylocation" <!-- Just for test -->   
          android:layout_margin="0dp"  
          android:layout_height="wrap_content"    
          android:layout_width="wrap_content"/>   

  <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"  
       android:text="50" android:textSize="12dp" android:textStyle="bold"     
        android:background="@drawable/shapecount"  
       android:textColor="#FFFFFF"  
       android:paddingLeft="3dp" android:paddingRight="3dp"  
       android:layout_margin="0dp"  
       android:layout_alignBottom="@+id/rlayout"  
       android:id="@+id/txtCount" />   

</RelativeLayout>
  
LayoutInflater inflater = LayoutInflater.from(this); 
View view = inflater.inflate(R.layout.tabicon, null);
final TextView txtCount = (TextView) view.findViewById(R.id.txtCount);

spec = tabHost.newTabSpec("artists").setIndicator(view).setContent(intent);


你可能感兴趣的:(android)