TabActivity

下面是一个使用android tabactivity 的例子 

 

//首先是继承TabActivity 实现 OnTabChangeListener  接口  这个接口在tab切换的时候调用

public class MainTabActivity extends TabActivity
 implements TabHost.OnTabChangeListener {
 
 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        setContentView(R.layout.maintabs);

 

        getTabHost().setOnTabChangedListener(this);

 

        Intent subscriptionIntent = new Intent(this, SubsActivity.class);

        createTab(subscriptionIntent, R.string.tab_subscription,
                R.drawable.subscripion_tab, SUBSCRIPTION_TAB);

    }
 

//下面这个函数展示的是怎样创建一个tab
    protected void createTab(Intent intent, int labelResId, int iconResId,
            String tab) {
        Resources resources = getResources();


        TabHost tabHost = getTabHost();

//添加一个tab 到TabHost(是多个Activity的containner ) 这里使用TabSpec 来描述一个tab

//TabSpec  由三个部分组成 indicator, content, and a tag 这个indicator 由一个text 和 Drwable 组成 然后给这个TabSpec  set 一个 Intent

//点击这个tab之后会调用这个intent
        tabHost.addTab(tabHost.newTabSpec(tab).setIndicator(
                resources.getText(labelResId), resources.getDrawable(iconResId))
                .setContent(intent));
    }

 @Override
 public void onTabChanged(String tabId) {
        Activity activity = getLocalActivityManager().getActivity(tabId);
        if (activity != null) {
            activity.onWindowFocusChanged(true);
        }
 }
 
  

你可能感兴趣的:(android)