TabHost里,有时候为了方便用户使用,会让程序自动切换标签,而还是让用户自己在标签上点来切换。今天我们就学习这个程序切换标签的方法。
package com.pocketdigi;
import android.app.TabActivity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TabHost;
public class main extends TabActivity {
TabHost tabHost;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitle("Tab测试");
tabHost = getTabHost();
LayoutInflater.from(this).inflate(R.layout.main,tabHost.getTabContentView(), true);
tabHost.addTab(tabHost.newTabSpec("A").setIndicator("tab1").setContent(R.id.tab1));
tabHost.addTab(tabHost.newTabSpec("B").setIndicator("tab2").setContent(R.id.tab2));
tabHost.addTab(tabHost.newTabSpec("C").setIndicator("tab3").setContent(R.id.tab3));
Button b1=(Button)findViewById(R.id.widget30);
b1.setOnClickListener(b1click);
}
OnClickListener b1click=new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
tabHost.setCurrentTabByTag("B");
//tabHost.setCurrentTab(1);
}
};
}
第28、29行的作用是一样的,都是切换到第二个标签。28行是通过Tab的tag(就是上面设置的newTabSpec),第29行是通过Tab序号来切换,这个序号是自动生成的,从为0开始递增