有时候我们的tabhost并不需要贴图,所以这个时候就必须把文字居中显示和设置大小了,代码如下
setContentView(R.layout.home_vzo_tabhost);
tabHost = getTabHost();
tabWidget = tabHost.getTabWidget();
TabHost.TabSpec spec;
Intent intent;
//indicator指示器
intent = new Intent(this,HomeVzoBasicInfoActivity.class); //把值传给启动的界面
//名字;要显示的字符;设置动画
spec = tabHost.newTabSpec("a1").setIndicator(getResources().getString(R.string.baseInfo))
.setContent(intent);//设置一个Acitivity
tabHost.addTab(spec);
intent = new Intent(this,HomeVzoContentActivity.class);
spec = tabHost.newTabSpec("a2").setIndicator(getResources().getString(R.string.myPull))
.setContent(intent);
tabHost.setOnTabChangedListener(this);
tabHost.addTab(spec);
for (int i =0; i < tabWidget.getChildCount(); i++) {
//修改Tabhost高度和宽度
// tabWidget.getChildAt(i).getLayoutParams().height = 30;
// tabWidget.getChildAt(i).getLayoutParams().width = 65;
//修改显示字体大小
TextView tv = (TextView) tabWidget.getChildAt(i).findViewById(android.R.id.title);
tv.setTextSize(18);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) tv.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 0); //取消文字底边对齐
params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //设置文字居中对齐
}
tabHost.setCurrentTab(0);
配置文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
style="@style/vzo_ll">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_marginTop="20dip"
android:layout_marginBottom="15dip"
android:layout_marginLeft="15dip"/>
<FrameLayout
android:orientation="horizontal"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:background="@drawable/item_bg_whilt"
android:layout_marginTop="20dip"
android:layout_marginBottom="15dip"
android:layout_marginRight="10dip"
android:layout_weight="1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/neckName"
android:gravity="center"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:drawableRight="@drawable/tab_sms_selected"
android:layout_gravity="left|center_vertical"/>
<TextView
android:id="@+id/neckName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/neckName"
android:gravity="center"
android:textColor="#558800"
android:layout_marginLeft="5dip"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge"/>
</FrameLayout>
</LinearLayout>
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:tabStripEnabled="false"
android:animateLayoutChanges="true">
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp" >
</FrameLayout>
</LinearLayout>
</TabHost>
</LinearLayout>