步骤
1.建立两个Activity,作为tab内容 (我这里是OneActivity、TestActivity)
public class OneActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView textview = new TextView(this);
textview.setText("This is the Artists tab");
setContentView(textview);
}
}
2.在layout文件夹中建立tab.xml用于怎样显示tab页面
注意:TabHost ,TabWidget ,FrameLayout的ID必须分别为@android:id/tabhost,@android:id/tabs,@android:id/tabcontent
另外还要注意一下android:layout_width宽度和android:layout_height高度的取值,还要LinearLayout的android:orientation=”vertical”(LinearLayout默认是横向的)当你看到布局和我不一样时你就要考虑一下这里是不是错了。(= =!因为我错过)
<?xml version="1.0" encoding="utf-8"?>
<TabHost android:id="@android:id/tabhost" android:layout_width="fill_parent"
android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<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"
android:padding="5dp" />
</LinearLayout>
</TabHost>
3.新建一个类TabWidget.java,继承TabActivity类
package com.fatkun;
import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;
public class TabWidget extends TabActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab);//这里使用了上面创建的xml文件(Tab页面的布局)
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabSpec spec;
Intent intent; // Reusable Intent for each tab
//第一个TAB
intent = new Intent(this,OneActivity.class);//新建一个Intent用作Tab1显示的内容
spec = tabHost.newTabSpec("tab1")//新建一个 Tab
.setIndicator("Tab1", res.getDrawable(android.R.drawable.ic_media_play))//设置名称以及图标
.setContent(intent);//设置显示的intent,这里的参数也可以是R.id.xxx
tabHost.addTab(spec);//添加进tabHost
//第二个TAB
intent = new Intent(this,TestActivity.class);//第二个Intent用作Tab1显示的内容
spec = tabHost.newTabSpec("tab2")//新建一个 Tab
.setIndicator("Tab2", res.getDrawable(android.R.drawable.ic_menu_camera))//设置名称以及图标
.setContent(intent);//设置显示的intent,这里的参数也可以是R.id.xxx
tabHost.addTab(spec);//添加进tabHost
tabHost.setCurrentTab(1);
}
}
4.最后一步,在AndroidManifest.xml加入你的Activity
android:theme=”@android:style/Theme.NoTitleBar”是可以使得TabWidget窗口没有标题,多点空间显示
分享到:
相关推荐
在Android开发中,`TabHost`和`TabWidget`是两个关键组件,它们常用于创建具有多标签(或称为卡片)界面的应用。这样的设计允许用户通过点击不同的标签来浏览和切换不同的视图或功能模块。下面我们将深入探讨这两个...
`TabHost`是Android中的一个容器类,它负责管理`TabWidget`和`FrameLayout`,并提供切换标签页的功能。`TabHost`的工作原理是将`TabWidget`和`FrameLayout`组合在一起,`TabWidget`显示标签,而`FrameLayout`则用于...
首先,`TabWidget`是Android原生提供的一种用于展示多个选项卡的组件,通常在TabHost中使用。默认情况下,`TabWidget`的条纹(Strip)颜色是系统主题的颜色,但可能不满足所有设计要求。因此,我们可以通过创建一个...
TabHost控件->TabWidget(必须命名为tabs)->FrameLayout(必须命名为tabcontent)。 先来贴出本例运行的截图: main.xml的源码如下: <?xml version=1.0 encoding=utf-8?> <TabHost android:layout_width=...
TabHost的职责是协调TabWidget中的各个Tab和与之相关联的活动或视图。在XML布局文件中,TabHost通常作为根元素,通过`<TabHost>`标签定义,并设置`android:id`为`@android:id/tabhost`。 TabWidget则负责显示各个...
在Android开发中,TabHost是一个非常重要的组件,它允许我们创建具有多个标签(Tab)的界面,每个标签对应一个不同的活动(Activity)或视图(View)。本文将深入讲解如何在Android应用程序中有效地使用TabHost。 ...
在Android开发中,TabHost和TabWidget是构建多标签界面的常用组件,它们允许用户在不同的活动或视图之间切换,提供类似浏览器标签页的体验。`TabHostExample`是一个典型的示例,展示了如何通过XML配置来实现TabHost...
在Android应用开发中,TabHost是一个非常重要的组件,它用于创建多标签的用户界面,使得用户可以在不同的功能之间轻松切换。TabHost与TabWidget和FrameLayout一起工作,为每个标签提供一个视图容器。本教程将深入...
在Android应用开发中,TabHost组件是一个非常常用的工具,它用于创建带有标签页的应用界面,让用户可以在多个视图间切换。本教程将详细介绍如何自定义TabHost组件使其显示在屏幕底部,并实现通过滑动切换页面的功能...
在Android开发中,创建用户友好的界面是至关重要的,而选项卡(Tab)菜单是一种常见的交互方式,可以方便用户在不同的功能或内容之间切换。本文将深入探讨如何使用TabHost组件在同一Activity上实现简单的Android选项...
在Android开发中,TabHost是实现标签栏切换界面的一个关键组件。TabHost允许开发者创建一个具有多个Tab的界面,每个Tab都可以关联到不同的布局或活动(Activity),为用户提供直观的多视图导航体验。本文将深入讲解...
在Android开发中,TabHost和TabWidget是两个重要的组件,它们用于实现标签栏(Tab)的布局和交互。TabHost可以看作是一个容器,它管理多个小窗口(FrameLayout),每个窗口对应一个Tab,而TabWidget则负责显示这些...
在Android开发中,TabHost是一个非常重要的组件,用于创建具有多个Tab标签的界面,每个标签可以展示不同的内容或活动(Activity)。本教程将详细介绍如何使用TabHost,特别适合初学者和教学场景,例如构建一个模拟...
在Android开发中,TabHost是一个重要的组件,它用于创建具有多个Tab标签的界面,每个标签页可以关联一个单独的活动(Activity)或者视图(View)。这篇博客文章“android总结之TabHost”深入探讨了如何在Android应用...
在Android开发中,TabHost是一个非常重要的组件,用于实现多标签页的应用界面。TabHost结合TabWidget和FrameLayout,能够方便地创建具有多个选项卡的布局。本篇将深入讲解如何利用TabHost来构建一个简单的Android...
在Android开发中,Tab布局和TabHost是创建多页面、多视图应用界面的重要组件,它们可以帮助用户在不同的功能之间轻松切换。本文将详细介绍Tab和TabHost的使用方法,并通过一个实际的源码实例来加深理解。 首先,Tab...
在实际的Android开发项目中,TabHost常用于构建主界面,如新闻应用、电商应用的首页等,用户可以通过不同的Tab来浏览不同的分类或功能模块。 通过以上步骤,你可以构建起一个基本的TabHost选项卡框架。不过要注意...
在Android应用开发中,TabHost是一个非常重要的组件,用于创建具有多个标签(Tab)的用户界面,每个标签可以展示不同的内容或功能。TabHost通常与TabWidget结合使用,为用户提供一种便捷的方式来切换不同的视图。...