1、activity_tabwidget.xml

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    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" >
        </TabWidget>

<FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >

<TextView
                android:id="@+id/tb_tv1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="This is the first tab" />

<TextView
                android:id="@+id/tb_tv2"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="This is another tab" />

<TextView
                android:id="@+id/tb_tv3"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="This is the third tab" />
        </FrameLayout>
    </LinearLayout>

</TabHost>

2、TabWidgetActivity.java

public class TabWidgetActivity extends TabActivity {
    // 声明TabHost对象
    TabHost tabHost;

@SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tabwidget);
        try {

// 取得TabHost对象
            tabHost = getTabHost();
            /* 为TabHost添加标签 */
            // 新建一个newTabSpec(newTabSpec)
            // 设置其标签和图标(setIndicator)
            // 设置内容(setContent)
            tabHost.addTab(tabHost
                    .newTabSpec("tab_test1")
                    .setIndicator("TAB1",
                            getResources().getDrawable(R.drawable.button1))
                    .setContent(R.id.tb_tv1));
            tabHost.addTab(tabHost
                    .newTabSpec("tab_test2")
                    .setIndicator("TAB2",
                            getResources().getDrawable(R.drawable.button2))
                    .setContent(R.id.tb_tv2));
            tabHost.addTab(tabHost.newTabSpec("tab_test3").setIndicator("TAB3",
                    getResources().getDrawable(R.drawable.button3)).setContent(R.id.tb_tv3));
        
        // 设置TabHost的背景颜色
        tabHost.setBackgroundColor(Color.argb(150, 22, 70, 150));
        // 设置TabHost的背景图片资源
        tabHost.setBackgroundResource(R.drawable.ic_launcher);
        // 设置当前显示那一个标签
        tabHost.setCurrentTab(0);
        } catch (Exception e) {
            e.printStackTrace();
        }
        // 标签切换事件处理
        tabHost.setOnTabChangedListener(new OnTabChangeListener() {

@Override
            public void onTabChanged(String tabId) {
                Dialog dialog = new AlertDialog.Builder(TabWidgetActivity.this)
                        .setTitle("提示")
                        .setMessage("当前选中" + tabId + "标签")
                        .setPositiveButton("确定",
                                new DialogInterface.OnClickListener() {

@Override
                                    public void onClick(DialogInterface dialog,
                                            int whichButton) {
                                        dialog.cancel();
                                    }
                                }).create();
                dialog.show();
            }
        });

}
}

Android——TabWidget的更多相关文章

  1. Android TabWidget底部显示

    TabHost控件默认使用LinearLayout包裹TabWidget和FrameLayout,布局文件如下: <TabHost xmlns:android="http://sche ...

  2. ANDROID中去掉ACTIONBAR或TABWIDGET的分隔线

    在android中,有时需要对ActionBar或者TabWidget的分隔线进行定制,如取消,相关的属性设置为android:divider 以TabWidget为例,取消对应的函数: tabWid ...

  3. Android 实现分页(使用TabWidget/TabHost)

    注:本文为转载,但该内容本人已亲身尝试,确认该方法可行,代码有点小的改动,转载用作保存与分享. 原作者地址:http://gundumw100.iteye.com/blog/853967 个人吐嘈:据 ...

  4. Android Tab -- 使用TabWidget、TabHost、TabActivity来实现

    原文地址:http://blog.csdn.net/crazy1235/article/details/42678877 TabActivity在API13之后被fragment替代了,所以不建议使用 ...

  5. android开发之如何使TabHost的TabWidget位于屏幕下方

    更改TabHost里的第一个LinearLayout为RelativeLayout.并在TabWidget中添加android:layout_alignParentBottom="true& ...

  6. Android:简单实现ViewPager+TabHost+TabWidget实现导航栏导航和滑动切换

    viewPager是v4包里的一个组件,可以实现滑动显示多个界面. android也为viewPager提供了一个adapter,此adapter最少要重写4个方法: public int getCo ...

  7. android自定义TabWidget样式

    先看看效果图吧,个人觉得图标丑了点,不过还行,自己用PS做的 下面是全部代码和流程,一定要按流程顺序来,不然错误! 1.tabhost.xml <TabHost xmlns:android=&q ...

  8. Android TabHost TabWidget 去除黑线(底部下划线)

    采用TabHost布局时,往往会发现默认的系统风格与软件风格很不协调,比如TabWidget的下划线影响布局效果.通常情况下会去除其下划线.如果是采用xml布局文件,在TabWidget的属性项设置a ...

  9. android之TabWidget选项卡

    1 概览 l  TabWidget与TabHost.tab组件一般包括TabHost和TabWidget.FrameLayout,且TabWidget.FrameLayout属于TabHost. l  ...

随机推荐

  1. [extjs] ExtJS4 treepanel 子节点选中父节点自动选中,选中父节点 子节点自动全部选中

    ExtJS4 treepanel 主要添加viewConfig重的代码: xtype:'treepanel', store: menuStore, id:'menuTreePanel', viewCo ...

  2. HTML5 javascript修改canvas的大小

    方法1: 设定固定的值,这种方式跟在html中设定canvas的值没有什么区别: window.onload = function(){ canvas.height = 100; canvas.wid ...

  3. 剑指offer系列20--从上到下打印二叉树

    * 20 [题目]从上往下打印出二叉树的每个节点,同层节点从左至右打印. * [思路]从根结点开始,先保存结点,再看根结点的左右结点有没有值. * 有,就将左右值放到集合中: * 根节点输出后,打印根 ...

  4. (转)textarea去掉右侧滚动条,去掉右下角拖拽

    本文转载自:http://blog.csdn.net/cctv_end/article/details/7946188 代码:  <TEXTAREA   style= "overflo ...

  5. android学习笔记三

    GUI==>Graphics User Interface,图形用户界面. android UI 建立在View.ViewGroup基础上,采用组合器设计模式设计View和ViewGoup. V ...

  6. 拿nodejs快速搭建简单Oauth认证和restful API server攻略

    拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最 ...

  7. POI按照源单元格设置目标单元格格式

    原文:http://jjw198874.blog.163.com/blog/static/1889845522011102401854234/ POI按照源单元格设置目标单元格格式 poi按照一个源单 ...

  8. ulipad 常用快捷键

    快捷键名称 对应功能 F1 (M)UliPad Help Document(帮助文档) F2 (M)Directory Browser(目录浏览)(3.1版新增) F3 (M)Find Next(查找 ...

  9. 【转】SQL SERVER 存储过程中变量的作用域

    今天遇到一个很有趣的事情,以前没有注意过,所以记下来. 先来看例子. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE ...

  10. java 中文 乱码 问号

    在基于Java的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号. 这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码, ...