步骤
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窗口没有标题,多点空间显示
分享到:
相关推荐
http://blog.csdn.net/birdno1/article/details/50516725 通过自定义view解决tabwidget下划线颜色问题
TabHost控件->TabWidget(必须命名为tabs)->FrameLayout(必须命名为tabcontent)。 先来贴出本例运行的截图: main.xml的源码如下: <?xml version=1.0 encoding=utf-8?> <TabHost android:layout_width=...
Android TabHost示例使用XML TabHost和TabWidget的Android Tab示例。 单击下面的链接以获取教程。演示版![ALT文本( “可选标题”)
自定义Android中TabHost组件显示在屏幕底部,并实现滑动切换页面。在此基础上可以实现类似米聊等软件主界面的Tab效果。
简单的android选项卡Tab菜单TabHost(一)同一Activity上实现
本文实例讲述了Android切换卡TabWidget用法。分享给大家供大家参考,具体如下: Tab选项卡类似与电话本的界面,通过多个标签切换不同的内容,要实现这个效果,首先要知道TabHost,它是一个用来存放多个Tab标签的容器...
Android TabHost嵌套示例,像电脑端一样在屏幕上显示上下嵌套的TAB效果,单击后切换内容,在内容页上又重新显示二级的TAB,实现嵌套,如示例图所示,注意:对于TabHost、布局文件中必须包含: TabHost、TabWidget ...
先看效果: 京东商城底部菜单栏 新浪微博底部菜单栏 ...本次学习效果图: ...第一,主布局文件(启动页main.xml,位于res/layout目录下)代码 ...xml version=....TabHost xmlns:android=...android:id=@+id/tabhost
1:TabHost 、TabWidget、FrameLayout一定添加id这个属性,否则会报错 android:id=”@android:id/tabhost” android:id=”@android:id/tabcontent” android:id=”@android:id/tabs” 这个属性是固定的。 2...
两种实现方式,一种是将每个Tab的布局嵌在TabHost中的FrameLayout中,每个Tab的内容布局与显示都在FrameLayout中进行,缺点是布局会显得很臃肿;一种是每个Tab从FrameLayout中独立出来,以Activity呈现,这样使得每...
tabHost = (CustomTabHost) findViewById(android.R.id.tabhost); tabWidget = (TabWidget) findViewById(android.R.id.tabs); tabHost.setOnTabChangedListener(this); init(); gestureDetector = ...
TabWidget类似于Android 中查看电话薄的界面,通过多个标签切换显示不同内容。要实现这一效果,首先要了解TabHost,它是一个用来存放多个Tab标签的容器。每一个Tab都可以对应自己的布局,比如,电话薄中的Tab布局...
对于TabHost、布局文件中必须包含 TabHost、TabWidget 、FrameLayout ,如果继承TabActivity,并且通过getTabHost()方法来获取TabHost,那么三者的ID必须是android.R.id.tabhost、android.R.id.tabs、android.R.id....
Android程序中,Tab标签窗口是一种常用的UI界面元素。它的实现主要是利用了TabHost类。 TabHost说明 TabHost是一个标签窗口的容器。 一个TabHost对象包含两个子元素对象: 一个对象是tab标签集合(TabWidget),用户...
备注:我在继承TabActivity的时候,将TabWidget的android:layout_height设置为"fill_parent"时,tab中不显示任何东西。如图: 如果修改了tabwidget和framelayout的id,系统会报需要相应的标签,这个是在setup方法...
<TabHost android:id="@android:id/tabhost" tools:context="com.example.ydc.filemanager.MainActivity"> <LinearLayout android:background="@drawable/login_bg" android:orientation="vertical"> <TabWidget ...
tab自定义实现,隐藏tabwidget,采用radiogroup代替
TabWidget类似于Android 中查看电话薄的界面,通过多个标签切换显示不同内容。要实现这一效果,首先要了解TabHost,它是一个用来存放多个Tab标签的容器。每一个Tab都可以对应自己的布局,比如,电话薄中的Tab布局...
本文实例讲述了Android简单实现屏幕下方Tab菜单的方法。分享给大家供大家参考,具体如下: 看到很多热门的Android程序(如:新浪微博、腾讯微博、京东商城、淘宝、当当等等)使用选项卡风格作为程序界面的主框架结构...
本文实例讲述了Android开发之TabActivity用法。分享给大家供大家参考,具体如下: 一.简介 TabActivity继承自Activity,目的是让同一界面容纳更多的内容。TabActivity实现标签页的功能,通过导航栏对各个页面进行管理...