本文实例讲述了Android切换卡TabWidget用法。分享给大家供大家参考,具体如下:

Tab选项卡类似与电话本的界面,通过多个标签切换不同的内容,要实现这个效果,首先要知道TabHost,它是一个用来存放多个Tab标签的容器,每一个Tab都可以对应自己的布局,比如,电话本中的Tab布局就是一个线性布局

要使用TabHost,首先要通过getTabHost方法获取TabHost的对象,然后通过addTab方法来向TabHost中添加Tab,当然每个Tab在切换时都会产生一个事件,要捕捉这个事件,需要设置TabActivity的事件监听setOnTabChangedListener

下面是个小例子:

TabTest.java:

package org.hualang.tab;

import android.app.Activity;

import android.app.TabActivity;

import android.graphics.Color;

import android.os.Bundle;

import android.widget.TabHost;

import android.widget.Toast;

import android.widget.TabHost.OnTabChangeListener;

public class TabTest extends TabActivity {

/** Called when the activity is first created. */

TabHost tabhost;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

//取得TabHost对象

tabhost = getTabHost();

//为TabHost添加标签

//新建一个newTabSpec(newTabSpec)

//设置其标签和图标(setIndicator)

//设置内容(setContent)

tabhost.addTab(tabhost.newTabSpec("tab1")

.setIndicator("TAB 1",getResources().getDrawable(R.drawable.img1))

.setContent(R.id.text1));

tabhost.addTab(tabhost.newTabSpec("tab2")

.setIndicator("TAB 2",getResources().getDrawable(R.drawable.img2))

.setContent(R.id.text2));

tabhost.addTab(tabhost.newTabSpec("tab3")

.setIndicator("TAB 3",getResources().getDrawable(R.drawable.img3))

.setContent(R.id.text3));

//设置TabHost的背景颜色

//tabhost.setBackgroundColor(Color.argb(150,22,70,150));

//设置TabHost的背景图片资源

tabhost.setBackgroundResource(R.drawable.bg0);

//设置当前显示哪个标签

tabhost.setCurrentTab(0);

//标签切换事件处理,setOnTabChangedListener

tabhost.setOnTabChangedListener(new OnTabChangeListener()

{

public void onTabChanged(String tabId)

{

Toast toast=Toast.makeText(getApplicationContext(), "现在是"+tabId+"标签", Toast.LENGTH_SHORT);

toast.show();

}

});

}

}

main.xml:

android:id="@android:id/tabhost"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:id="@android:id/tabs"

android:layout_width="fill_parent"

android:layout_height="wrap_content" />

android:id="@android:id/tabcontent"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:id="@+id/text1"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:text="选项卡1" />

android:id="@+id/text2"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:text="选项卡2" />

android:id="@+id/text3"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:text="选项卡3" />

希望本文所述对大家Android程序设计有所帮助。

android标签切换卡,Android切换卡TabWidget用法示例相关推荐

  1. sleep as android标签,Sleep as Android:终于、终于可以无痛起床

    本文参与「我的 2018 年度关键词」年度征文活动. 清晨,我床头的手机响起熟悉的<See you again>的前奏.两分钟后,五个舍友陆陆续续都被闹醒了,而我依然沉浸在美梦中.「醒醒! ...

  2. android使用 注解框架,Android实践 | 注解框架ButterKnife基本使用

    使用ButterKnife,我们可以不用写很多的findViewById()语句,以及通过getResources获取String.Color等资源,这可以让我们的代码更加简洁,使用起来也很方便.下面 ...

  3. android 自定义 theme,为Android手机制作自定义主题

    我是一名新的移动开发人员,我知道如何在应用程序上放置主题,到目前为止,我已经能够制作2个移动应用程序,但我想尝试为手机制作自定义主题.我想知道是否有人对以下内容有想法. 1.how to make a ...

  4. Android默认电话卡,Android智能终端SIM卡自动切换方法与流程

    本发明涉及智能终端的技术领域,尤其涉及一种SIM卡的切换方法. 背景技术: 现在的手机等机器基本支持多卡配置,而且现在单卡配置基本已经不能满足人们的日常需求:并且在智能系统的潮流之下,有人喜欢用手机看 ...

  5. Android 系统(145)---切换两张sim卡的移动网络,自动锁屏

    切换两张sim卡的移动网络,自动锁屏 1描述 1. 插入两张sim卡,设置安全锁屏 2. 设置--网络和互联网--SIM卡--首选sim卡--移动数据--切换两张卡的移动网络 3. 手机自动锁屏   ...

  6. android stk 卡号切换,[技巧]mpx200如何使用一卡双号或者一卡多号

    在2003下,支持stk,可以用有stk菜单的一卡双号或者一卡多号,不过,切换号码手机要自动重启,很不方便:使用开关机切换型,即开关一次自动切换一次号码就比较方便,可以使用飞行模式切换. 在wm5下, ...

  7. android stk 卡号切换,采用stk/utk实现手机双卡切换及其它功能的方法和装置的制作方法...

    专利名称:采用stk/utk实现手机双卡切换及其它功能的方法和装置的制作方法 技术领域: 本发明涉及手机双卡,主要是指一种采用STK/UTK技术实现手机待机双卡切换等功能的方法及其装置. 背景技术: ...

  8. android tab 切换动画,Android之ViewPager+TabLayout组合实现导航条切换效果(微信和QQ底部多标签切换)...

    前言 之前在另外一篇中用Fragment和button实现了点击切换Fragment的效果,比较简陋.这次改用ViewPager+TabLayout 实现联动的效果. 实现效果 ViewPager 多 ...

  9. android 对象存储sd卡,Android网络与数据存储——File存储(实现SD卡文件浏览器)...

    Java提供了一套完整的IO流体系,包括FileInputStream.FileOutPutStream等,通过这些IO流可以非常方便的访问磁盘上的文件内容.Android同样支持以这种方式来访问手机 ...

最新文章

  1. java二叉树镜像_给定一个二叉树,检查它是否是镜像对称的。
  2. XGBoost、LightGBM的详细对比介绍
  3. 您是否应该始终偏爱xrange()而不是range()?
  4. 这是我在网上安的第一个窝!
  5. centos7开机启动自定义脚本_在Centos 7系统中开启启动自定义脚本的方法
  6. linux二进制安装包制作,linux下二进制安装包的创建
  7. [leetcode] 413. 等差数列划分
  8. 测试用ASP.NET建立一个在线RSS新闻聚合器
  9. 计算机基础知识集体备课,计算机基础知识集体备课.doc
  10. 手机上怎么安装Java的软件游戏
  11. oracle 手机壁纸,盘卷先知 Coiling Oracle壁纸图片65 - 猫猫壁纸酷 wallcoo.com
  12. python文件写入方式_Python写入文件的方式
  13. iOS HealthKit
  14. 9月TIOBE编程语言排行榜出炉,这个语言或成最大赢家!
  15. Prometheus安装配置及其相关组件的应用
  16. 车载网络测试 - UDS诊断篇 - 故障码(DTC)
  17. 淘宝无线端店铺权重提升方法技巧步骤
  18. 如何使用canvas进行画图
  19. 深度调查:内耗不止,Sushiswap内部究竟发生了什么?|链捕手
  20. 北大生卖猪肉,腾讯程序员送外卖,人最重要的不是面子而是活下去

热门文章

  1. java实现冗余校验_循环冗余校验_循环冗余校验码计算_循环冗余校验 java实现(6)...
  2. Web容器默认的servlet
  3. html鼠标自动向下滑动,基于JavaScript实现鼠标向下滑动加载div的代码
  4. 请描述定时器初值的计算方式_51单片机定时器初值计算器
  5. python3中round的用法_Python 3标准库用法--reversed、round、set
  6. tomcat 8集合memcache所需完整jar包_使用 zabbix 监控 tomcat(包含jvm监控)
  7. maven junit空指针_Maven相关笔试面试题目
  8. 计算机网络利弊的作文英语作文,网络的弊端英语作文(精选6篇)
  9. java jsonfield_【技术累积】【点】【java】【27】@JSONField
  10. oracle的服務監聽器,Oracle监听器和服务名的配置