zoukankan      html  css  js  c++  java
  • Tab与TabHost的使用

    package com.chaowen;

    import android.app.TabActivity;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.view.LayoutInflater;
    import android.view.Menu;
    import android.view.MenuInflater;
    import android.widget.TabHost;
    import android.widget.Toast;
    import android.widget.TabHost.OnTabChangeListener;

    publicclass MyTab extends TabActivity{
    private TabHost myTabHost;
    protectedint myMenuSettingTag=0;
    protected Menu myMenu;
    @Override
    protectedvoid onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);


    myTabHost
    =this.getTabHost();//从TabActivity上面获取放置Tab的TabHost
    LayoutInflater.from(this).inflate(R.layout.main, myTabHost.getTabContentView(),true);
    //from(this)从这个TabActivity获取LayoutInflater
    //R.layout.main存放Tab布局
    //通过TabHost获得存放Tab标签页内容的FrameLayout
    //是否将inflate拴系到根布局元素上
    myTabHost.setBackgroundColor(Color.argb(150, 22, 70, 150));
    //设置一下TabHost的颜色



    myTabHost.addTab(myTabHost.newTabSpec(
    "AA") //标签一
    //显示的标题为谢霆锋,如果不想显示出来,就设为空
    .setIndicator("谢霆锋",getResources().getDrawable(R.drawable.tab))
    .setContent(R.id.layout1));

    myTabHost.addTab(myTabHost.newTabSpec(
    "BB")
    .setIndicator(
    "李俊基",getResources().getDrawable(R.drawable.tab2))
    .setContent(R.id.layout2));

    myTabHost.addTab(myTabHost.newTabSpec(
    "CC")
    .setIndicator(
    "炎亚纶",getResources().getDrawable(R.drawable.tab3))
    .setContent(R.id.layout3));

    //标签切换事件
    myTabHost.setOnTabChangedListener(new OnTabChangeListener() {

    @Override
    publicvoid onTabChanged(String tabString) {
    if(tabString.equals("AA")){
    myMenuSettingTag
    =1;
    }

    if(tabString.equals("BB")){
    myMenuSettingTag
    =2;
    }

    if(tabString.equals("CC")){
    myMenuSettingTag
    =3;
    }
    if (myMenu !=null) {
    onCreateOptionsMenu(myMenu);
    }
    }
    });
    }



    @Override
    publicboolean onCreateOptionsMenu(Menu menu) {
    myMenu
    =menu;
    myMenu.clear();

    switch (myMenuSettingTag) {
    case1:
    Toast.makeText(
    this, "谢霆锋", Toast.LENGTH_SHORT).show();
    break;
    case2:
    Toast.makeText(
    this, "李俊基", Toast.LENGTH_SHORT).show();
    break;
    case3:
    Toast.makeText(
    this, "炎亚纶", Toast.LENGTH_SHORT).show();
    break;
    }
    returnsuper.onCreateOptionsMenu(menu);
    }
    }

    布局main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
         <!-- 第一个Tab对应的布局 -->
       <LinearLayout
          android:id="@+id/layout1"
          android:layout_height="fill_parent"
          android:layout_width="fill_parent"
          android:orientation="vertical"
         >
         
         <ImageView
           android:id="@+id/Image01"
           android:layout_height="fill_parent"
           android:layout_width="wrap_content"
           android:src="@drawable/i1"
           />
         
         </LinearLayout>
         <!-- 第二个Tab对应的布局 -->
          <LinearLayout
          android:id="@+id/layout2"
          android:layout_height="fill_parent"
          android:layout_width="fill_parent"
          android:orientation="vertical"
         >
         
         <ImageView
           android:id="@+id/Image02"
           android:layout_height="fill_parent"
           android:layout_width="wrap_content"
           android:src="@drawable/i2"
           />
         
         </LinearLayout>
         
         <!-- 第三个Tab对应的布局 -->
          <LinearLayout
          android:id="@+id/layout3"
          android:layout_height="fill_parent"
          android:layout_width="fill_parent"
          android:orientation="vertical"
         >
         
         <ImageView
           android:id="@+id/Image03"
           android:layout_height="fill_parent"
           android:layout_width="wrap_content"
           android:src="@drawable/i3"
           />
         
         </LinearLayout>
    </FrameLayout>
    

    源码下载:http://u.115.com/file/bhbmel05

  • 相关阅读:
    “人工智能”前景:只有人工,没有智能
    google scholar vs baidu scholar-what is your problem
    springSecurity使用
    springMVC中的HttpSession与Model
    mybatis关于Criteria的一点小坑。。。
    MyBatis的Mapper接口以及Example的实例函数及详解
    被springSecurity坑哭的一天
    Mybatis-Generator
    Redis五种数据类型应用场景
    springboot_自动配置原理
  • 原文地址:https://www.cnblogs.com/andgoo/p/2088219.html
Copyright © 2011-2022 走看看