`

android TabHost简单使用

阅读更多

TabHost配合Radio按钮 简单使用

 

使用TabHost 可以在一个屏幕间进行不同版面的切换

一、继承TabActivity

示例

public class MainActivity extends TabActivity {

 

       private TabHost tabHost;

       private RadioGroup radioGroup;

         

        @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

 

        radioGroup = (RadioGroup)findViewById(R.id.main_radio);

        tabHost = getTabHost();

         //添加选项卡

        tabHost.addTab(tabHost.newTabSpec("tab_test1").setIndicator("TAB ONE").setContent(new Intent(this,TaboneActivity.class)));

        

        tabHost.addTab(tabHost.newTabSpec("tab_test2").setIndicator("TAB_TWO").setContent(new Intent(this, TabtwoActivity.class)));

      //初始选中

        tabHost.setCurrentTabByTag("tab_test2");

        

        //设置为默认选中

        radioGroup.check(R.id.strollbtn);

 

      //radio按钮事件

        radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

 

@Override

public void onCheckedChanged(RadioGroup group, int checkedId) {

 

        switch (checkedId) {

                                    case R.id.recommendbtn:

                                         tabHost.setCurrentTabByTag("tab_test1");

                                         break;

                                    case R.id.strollbtn:

                                           tabHost.setCurrentTabByTag("tab_test2");

                                         break;

                              }

                        }

                         }  );

      }

 }

 

main.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:orientation="vertical"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    >

    <TabHost android:id="@android:id/tabhost"  //id android 默认

    android:layout_width="match_parent"

    android:layout_height="match_parent">

    <!--注意 设置此LinearLayout时,选项卡在底部,如去提,选项卡在屏幕顶部-->

<LinearLayout android:orientation="vertical"

android:layout_width="fill_parent" android:layout_height="fill_parent">

 

<FrameLayout android:id="@android:id/tabcontent"  //id android 默认

android:layout_width="fill_parent" android:layout_height="0.0dip"

android:layout_weight="1.0"/>

<!--注意切记  android:visibility="gone" 时,隐藏系统提供的选项卡,方便设计自定义选项卡-->

            <TabWidget android:id="@android:id/tabs" //android 默认

android:layout_width="fill_parent" android:layout_height="wrap_content" 

android:visibility="gone" android:layout_weight="0.0"/>

<LinearLayout android:layout_width="fill_parent"

android:layout_height="wrap_content" android:background="#ff919191"

android:paddingTop="1px">

<!-- 自定义radio组件-->

<RadioGroup android:gravity="center_vertical"

android:layout_gravity="bottom" android:orientation="horizontal"

android:id="@+id/main_radio" android:background="@color/skin_green"

android:layout_width="fill_parent" android:layout_height="50dp">

<RadioButton android:id="@+id/recommendbtn"

android:tag="recommendbtn" style="@style/style_recommendbtn" />

<RadioButton android:id="@+id/strollbtn" android:tag="strollbtn"

style="@style/style_strollbtn" />

<RadioButton android:id="@+id/specialbtn" android:tag="specialbtn"

</RadioGroup>

</LinearLayout>

</LinearLayout>

    </TabHost>

</LinearLayout>

 

TaboneActivity

 

public class TaboneActivity extends Activity {

 

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

 

setContentView(R.layout.layout_one);

}

 

}

 

layout_one.xml

 

<?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:id="@+id/linear1"

  android:orientation="vertical">

 

  <TextView android:id="@+id/textView"

  android:layout_width="fill_parent"

  android:layout_height="wrap_content"

  android:text="第一个页面"></TextView>

 

 

  <LinearLayout android:id="@+id/content"

android:layout_width="fill_parent" android:layout_height="wrap_content"

android:layout_weight="1.0" android:background="@color/background">

</LinearLayout>

</LinearLayout>

分享到:
评论

相关推荐

    Android 嵌套TabHost示例

    在Android应用开发中,TabHost是一个非常重要的组件,它用于创建多标签的界面,让用户能够通过...通过理解和实践这个示例,开发者可以更好地掌握Android TabHost的使用,以及如何在实际项目中灵活运用,提升用户体验。

    android TabHost(标签)的使用

    本文将深入讲解如何在Android中使用TabHost,并通过一个简单实例来演示其基本用法。 首先,我们需要了解TabHost的基本结构。TabHost通常包含两个主要部分:TabWidget和FrameLayout。TabWidget负责显示和管理各个Tab...

    android Tabhost 实现底部菜单效果

    在Android开发中,TabHost是实现底部导航菜单的一种传统方式,它允许用户在多个标签页之间切换,每个标签页通常代表一个不同的功能区域。本文将详细介绍如何使用TabHost来创建带有图片和文字,并且在选中时有明显...

    TabHost的简单使用

    本篇文章将深入探讨如何在Android应用中实现TabHost的简单使用。 首先,我们需要在布局文件中设置TabHost。一个基本的TabHost布局可能如下所示: ```xml &lt;TabHost xmlns:android=...

    android TabHost使用详解

    在Android开发中,`TabHost` 是一个非常实用的组件,用于创建具有多个选项卡的应用界面。它允许开发者在一个活动中展示多个视图,并通过选项卡进行切换。下面我们将详细介绍如何使用 `TabHost`,包括布局的设置和...

    android TabHost 底部显示

    本文将深入探讨如何使用TabHost来实现在Android应用底部显示选项卡的功能。 一、TabHost简介 TabHost是Android SDK中的一个类,它提供了在一个Activity中创建多个Tab的能力。每个Tab对应一个可以切换的界面,用户...

    android 页卡效果,用tabhost实现最简单的页卡效果

    本篇文章将深入探讨如何使用TabHost在Android中实现最简单的页卡效果。 首先,我们需要理解TabHost的基本结构。TabHost通常包含两个主要组件:TabWidget和FrameLayout。TabWidget是显示页卡标签的部分,而...

    Android TabHost List View 使用的一个小例子

    现在,我们将这两个组件结合在一起,创建一个简单的Android TabHost ListView应用: 1. **设置布局文件**:首先,你需要创建两个XML布局文件,一个用于TabHost的总体布局,另一个用于ListView的子布局。在子布局中...

    Android Tabhost使用详解(详尽)

    ### Android Tabhost 使用详解 #### 一、Tabhost 概述 在Android开发过程中,`Tabhost` 是一个非常实用的组件,它可以帮助开发者轻松地为应用创建标签式导航界面。这种方式不仅美观而且能有效提高用户体验。本文将...

    android 的TabHost

    在这个讨论中,我们将聚焦于Android最新的`TabHost`,它继承自`FrameActivity`,并主要使用`Fragment`来处理各个选项卡的内容。 1. **TabHost的定义与功能**: `TabHost`是基于`FrameLayout`的布局管理器,它提供...

    android TabHost+slidingmenu简单实现

    在这个“android TabHost+slidingmenu简单实现”的主题中,我们将探讨如何将这两个组件结合,为用户提供一个既具有标签页切换又拥有滑动菜单的交互体验。 首先,让我们了解TabHost。TabHost是Android提供的一个容器...

    android的tabhost的一个例子

    总之,Android的TabHost结合ActivityGroup可以创建一个具有多页面选项卡的用户界面,虽然在现代Android开发中,通常建议使用Fragment替代ActivityGroup,但理解这种旧的实现方式对理解Android历史和一些老项目依然很...

    Android Intent_TabHost源码演示

    Android编程之Intent_TabHost源码演示,自定义的Tabhost(内含源码),学习制作Android软件的TAB标签界面,在电脑上已经很流行的功能,Android手机上当然不能少,这个TabHost源码相对简单些,是JAVA转学Android比较...

    tabhost实现Android底部导航

    在Android开发中,...同时,随着Android版本的更新,谷歌推出了新的底部导航实现方式,如BottomNavigationView,虽然TabHost在现代Android开发中使用较少,但在一些旧项目或简单应用中,它仍然是一个实用的选择。

    android tabhost 开发

    本文将深入探讨Android TabHost的使用、原理以及如何实现Tab切换效果。 一、TabHost简介 TabHost是Android提供的一个容器,它允许我们在一个Activity中创建多个Tab,每个Tab对应一个单独的界面或者Fragment。通过...

    android TabHost 运用

    在本教程中,我们将深入探讨如何在Android 1.6版本中使用TabHost,并通过实例来理解其工作原理。 首先,让我们了解TabHost的基本结构。在XML布局文件中,TabHost通常被定义为根元素,TabWidget作为子元素负责显示...

    android tabhost(选项卡)滑动分页

    总的来说,这个项目涵盖了Android UI设计中的几个关键组件和概念:TabHost用于选项卡布局,ViewFlipper实现简单的滑动效果,而GestureDetector则增强了用户的触摸交互。这些技术的组合使用,使得应用能够在有限的...

    详解Android TabHost的多种实现方法 附源码下载

    这种方法相对简单,因为`TabActivity`已经封装了一些关于TabHost的处理逻辑。在继承`TabActivity`的子类中,可以通过`setup()`方法初始化TabHost,并使用`addTab()`添加标签。 1. **布局文件**:与方法一相同,需要...

    android 一个TabHost的例子

    本篇将深入讲解如何利用TabHost来构建一个简单的Android应用实例。 首先,我们需要了解TabHost的基本结构。TabHost由两部分组成:TabWidget和FrameLayout。TabWidget负责显示各个选项卡,而FrameLayout则承载每个...

Global site tag (gtag.js) - Google Analytics