TabHost:
相当于浏览器中浏览器分页的集合
TabSpace:
相当于浏览器中的每个分页面
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/tabBack"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/btn_back" />
<TextView
android:id="@+id/tabTv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/tab_tv" />
<LinearLayout
android:id="@+id/tab_layout3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/bg"
>
<Button
android:id="@+id/tabBtn3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/tab_tv" />
<TextView
android:id="@+id/tabTv3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/tab_tv" />
</LinearLayout>
</LinearLayout>
public class TabActivity extends android.app.TabActivity{
private TabSpec ts1,ts2,ts3;
private TabHost tab;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//setContentView(R.layout.tab_view);
//取得TabHost
tab = this.getTabHost();//实例(分页)菜单
//利用LayoutInflater将布局与分页菜单一起显示
LayoutInflater.from(this).inflate(R.layout.tab_view, tab.getTabContentView());
ts1 = tab.newTabSpec("tabOne");//实例化一个分页
ts1.setIndicator("Tab1");//设置此分页显示的标题
ts1.setContent(R.id.tabBack);
ts2 = tab.newTabSpec("tabTwo");
//设置分页显示的标题和图标
ts2.setIndicator("Tab2",getResources().getDrawable(R.drawable.ico));
ts2.setContent(R.id.tabTv);
ts3 = tab.newTabSpec("tabThree");
ts3.setIndicator("Tab3");
ts3.setContent(R.id.tab_layout3);
//菜单中添加分页
tab.addTab(ts1);
tab.addTab(ts2);
tab.addTab(ts3);
tab.setOnTabChangedListener(new OnTabChangeListener() {
@Override
public void onTabChanged(String tabId) {
// TODO Auto-generated method stub
if(tabId.equals("tabOne")){
Toast.makeText(TabActivity.this, "One", Toast.LENGTH_SHORT).show();
}
if(tabId.equals("tabTwo")){
Toast.makeText(TabActivity.this, "二", Toast.LENGTH_SHORT).show();
}
if(tabId.equals("tabThree")){
Toast.makeText(TabActivity.this, "3", Toast.LENGTH_SHORT).show();
}
}
});
}
}
:------------------------------------
1.继承:android.app.TabActivity
2.创建TabHost分页菜单对象,利用以下代码:
TabHost tab = this.getTabHost();
LayoutInflater.from(this).inflate(R.layout.main,tableHost.getTabContentView());
3.声明TabSpace
TabSpace ts = tab.newTablSpace(String tag);
setIndicator(CharSequence label, Drawable icon)
label:标题 icon:图标
setContent(int arg);//设置显示内容ID
arg:组件Id,也可以是布局Id
4.添加至TabHost
tab.addTab(TabSpace tabSpace);//根据添加顺序,从左往右显示
5.监听分页改变事件:
.OnTabChangedListener接口,重写OnTabChanged(String tableId)
.tableId 是 在创建TabSpace时的值。如: TabSpace ts = tab.newTabSpace("id");
分享到:
相关推荐
在Android应用开发中,"左侧TabHost选项卡"是一种常见的用户界面设计,它通常用于横屏模式下,为用户提供方便的导航和丰富的交互体验。TabHost是Android SDK中提供的一种组件,它允许开发者在一个活动中创建多个选项...
TabHost是Android开发中用于创建具有多个选项卡的界面组件,它允许用户通过不同的选项卡在多个视图之间切换,从而实现多面板的交互体验。这个组件在早期的Android版本中非常常见,但现在已经被FragmentTabHost和底部...
在Android开发中,TabHost和TabWidget是两个重要的组件,它们用于实现标签栏(Tab)的布局和交互。TabHost可以看作是一个容器,它管理多个小窗口(FrameLayout),每个窗口对应一个Tab,而TabWidget则负责显示这些...
TabHost结合TabWidget(选项卡)和FrameLayout(内容区域)来实现这一功能。本教程将深入讲解如何使用TabHost进行应用开发,并通过实际案例进行说明。 首先,我们需要理解TabHost的基本结构。一个TabHost通常包含...
Android TabHost嵌套示例,像电脑端一样在屏幕上显示上下嵌套的TAB效果,单击后切换内容,在内容页上又重新显示二级的TAB,实现嵌套,如示例图所示,注意:对于TabHost、布局文件中必须包含: TabHost、TabWidget ...
**TabHost选项卡功能详解** 在Android开发中,TabHost是一个非常重要的组件,它用于创建具有选项卡式界面的应用程序。TabHost允许用户通过不同标签页来切换不同的视图或功能,极大地提升了用户体验。本篇文章将深入...
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...
`TabHost`包含两个主要组件:`TabWidget`用于显示选项卡,`FrameLayout`(通常称为`android:id/tabcontent`)用于显示内容。 2. **实现左右滑动**: 左右滑动在`TabHost`中可能通过使用第三方库如`ViewPager`来...
让我们深入了解一下如何在Android中使用TabHost来构建选项卡框架。 1. **TabHost介绍** TabHost是Android提供的一个类,它负责管理和显示多个Tab(标签页)。每个Tab都可以关联一个单独的布局或活动,这样用户就...
在Android开发中,TabHost是一个非常重要的组件,用于创建具有多个选项卡的用户界面,每个选项卡都可以关联到一个不同的活动或视图。这个“Android - TabHost选项卡示例源码”提供了一个实例,帮助开发者更好地理解...
在Android应用开发中,TabHost是一个非常重要的组件,它允许我们创建带有多个选项卡的应用界面。这个组件在早期的Android版本中广泛使用,为用户提供了一种便捷的方式来组织和切换不同的视图或活动。本文将深入探讨...
【Android FragmentTab 选项卡与 ViewPager 的应用】 在 Android 应用开发中,FragmentTab 选项卡和 ViewPager 是实现多视图切换的常见组件。FragmentTabHost 提供了一个方便的容器,可以用来显示多个 Fragment,...
在Android开发中,TabHost是实现选项卡切换界面的一个重要组件。TabHost允许开发者在一个活动中创建多个小窗口,每个窗口代表一个不同的功能区域,用户可以通过点击选项卡在这些区域之间切换,提供了一种友好的多...
安卓app开发项目-可以横向拖动的TabHost(源码).zip安卓app开发项目-可以横向拖动的TabHost(源码).zip安卓app开发项目-可以横向拖动的TabHost(源码).zip安卓app开发项目-可以横向拖动的TabHost(源码).zip安卓app开发...
### Android中的Tab与TabHost详解 #### 一、Tab与TabHost概述 在Android开发过程中,经常需要设计具有标签切换功能的应用界面。其中,`TabHost`是Android提供的一种实现多标签视图的方式,它可以帮助开发者创建出...
在"安卓FragmentTab选项卡相关-封装的一个tabhost框架.zip"这个资源中,开发者已经提供了一个基于FragmentTabHost的封装框架。这个框架可能包括了创建和管理多个Fragment的逻辑,以及TabHost的设置和事件处理。由于...
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...
`FragmentTabHost`是`TabHost`的扩展,它允许在每个选项卡中使用`Fragment`。`Fragment`是Android中的一个组件,可以包含用户界面和业务逻辑,这样可以在不同的屏幕尺寸和方向上重用。`FragmentTabHost`简化了在`...
6. **更新TabHost的监听器**:可以通过监听`TabHost.OnTabChangeListener`来监控用户在选项卡之间的切换,以便执行相应的逻辑。 通过以上步骤,你就可以创建一个具备底部选项卡和滑动效果的应用界面。在实际开发中...