1.继承TabActivity实现

a)         在布局文件中使用FrameLayout列出Tab组件及Tab中的内容组件

b)        Activity要继承TabActivity

c)         调用TabActivity的getTabHost()方法获得TabHost对象

d)        通过TabHost创建Tab选项

public class MainActivity extends TabActivity {

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

       /* requestWindowFeature(Window.FEATURE_NO_TITLE);

        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

                        WindowManager.LayoutParams.FLAG_FULLSCREEN);*/

        TabHost th = getTabHost();

        LayoutInflater.from(this).inflate(R.layout.main, th.getTabContentView(), true);

        th.addTab(th.newTabSpec("all").setIndicator("所有通话记录").setContent(R.id.TextView01));

        th.addTab(th.newTabSpec("ok").setIndicator("已接来电").setContent(R.id.TextView02));

        th.addTab(th.newTabSpec("cancel").setIndicator("未接来电").setContent(R.id.TextView03));

        th.setOnTabChangedListener(

                  new OnTabChangeListener() {

                               @Override

                               public void onTabChanged(String tabId) {

                                      Toast.makeText(MainActivity.this, tabId, Toast.LENGTH_LONG).show();

                               }

                        }

        );

    }

}

2.Tab的内容还可以通过实现一个接口TabHost.TabContentFactory的createTabContent方法来指定

public class MainActivity extends TabActivity implements

          TabHost.TabContentFactory {

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

   @Override

   public void onCreate(Bundle savedInstanceState) {

          super.onCreate(savedInstanceState);

          TabHost th = getTabHost();

          th.addTab(th.newTabSpec("all").setIndicator("所有通话记录").setContent(this));

          th.addTab(th.newTabSpec("ok").setIndicator("已接来电").setContent(this));

          th.addTab(th.newTabSpec("cancel").setIndicator("未接来电").setContent(this));

   }

   public View createTabContent(String tag) {

          ListView lv = new ListView(this);

          List<String> list = new ArrayList<String>();

          list.add(tag);

          if(tag.equals("all")){

                 list.add("tom");

                 list.add("kite");

                 list.add("rose");

          }else if(tag.equals("ok")){

                 list.add("tom");

                 list.add("kite");

          }else{

                 list.add("rose");

          }

          ArrayAdapter adapter = new ArrayAdapter(this,

                        android.R.layout.simple_list_item_checked, list);

          lv.setAdapter(adapter);

          return lv;

   }

}

<Android>tab选项卡的更多相关文章

  1. 基于CkEditor实现.net在线开发之路(4)快速布局,工具箱,模板载入,tab选项卡简单说明与使用

    上一章给常用的from表单控件属性页面,进行了简单说明和介绍,但是由于是在网页中做界面设计,操作肯定没有桌面应用程序方便,便捷,为了更方便的布局与设计,今天我主要说一下快速布局,工具箱,tab选项卡, ...

  2. 可轮播滚动的Tab选项卡

    前段时间有试着搭建个后台主题ui框架,有用到可支持滚动的Tab选项卡,模仿着H+后台主题ui框架中的代码造轮子改造了下,可惜代码在公司,不能把代码外发出来(感觉这样被限制了很多,对于这样的公司没办法, ...

  3. android tab选项卡的使用

    项目做完了,写写博客,在项目中遇到的一些问题,或者是自己觉得很不错的东西.这一篇主要是想和大家分享一下我在项目中封装的一个东西,就是tab选项卡.先看看效果图: 我在网上看了很多有关选项卡的demo, ...

  4. js基础练习一之tab选项卡

    最近在学习前端,当然包括js,css,html什么的,在听课时做的一些小练习,记录下来: 实例一: --Tab选项卡-- <script type="text/javascript&q ...

  5. :target伪类制作tab选项卡

    :target伪类的作用是突出显示活动的HTML锚,下面是一个简单的例子: HTML代码: <div> <a href="#demo1">点击此处</ ...

  6. 工作当中实际运用(1)——tab选项卡

    不废话 直接上代码: tab选项卡 window.onload=function(){ var titles= document.getElementById('header-dh').getElem ...

  7. 各种效果的tab选项卡

    ;(function($){ $.fn.tabso=function( options ){ var opts=$.extend({},$.fn.tabso.defaults,options ); r ...

  8. (2)WinForm中改变Tab选项卡的顺序

    Tab选项卡选中,在其属性中找到TabPages这个属性.点进去,可以通过上下移动标签卡改变标签卡的顺序.

  9. 原生js实现tab选项卡里内嵌图片滚动特效代码

    <!DOCTYPE HTML><html lang="en-US"><head><meta charset="UTF-8&quo ...

  10. tab选项卡-jQuery

    上次用原生的js写了个tab选项卡   这次按照一样的思路用jQuery写了一个 ,直接看代码: /*布局*/ <div id="div1"> <input cl ...

随机推荐

  1. MapReduce清洗日志数据统计PV量

    package mapreduce.webpv; import java.io.IOException; import org.apache.commons.lang.StringUtils; imp ...

  2. python新手学习之文件读写之修改

    文件除r.w.a方式打开外,还可以有多种组合方式如r+ w+ a+等多种方式 1.r+ 读写模式介绍,开始读是从一行开始读,写永远从最后开始写(类似于追加) # f = open("test ...

  3. ubuntu16.04 64位安装tftp服务器

    1.安装tftpd-hpa和xinetd sudo apt-get install tftpd-hpa xined2.针对64位操作系统安装openbsd-inetd apt-get install ...

  4. NOI2002银河英雄传说-带权并查集

    [NOI2002]银河英雄传说-带权并查集 luogu P1196 题目描述 Description: 公元五八○一年,地球居民迁至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年, ...

  5. canvas画的文字在安卓移动设备上可以显示,但是在ios移动设备上无法显示

    不用担心iOS Safari不支持canvas,查看https://caniuse.com/ 发现是支持的 ctx.font = "0.16rem Arial"; 为了适配移动端直 ...

  6. 【NAS】CIFS用户场景需求分析

    1.everyone用户 1.1: 场景描述:共享目录为rule,所有用户都可以查看,但是不能修改: 解决方法:在smb.conf里配置read only = yes,具体示例如下: [rule] p ...

  7. Typeahead的使用总结

    Typeahead是Bootstrap的自动补全JS插件. 最近项目中用到,总结一下. 与autocomplish类似,通过ajax实现,实现流程是前台输入关键字,后台根据关键字查询出信息,构造jso ...

  8. android学习十一 高级调试分析功能

    1.debug 功能列表 2.ddms功能( 内存检查,线程检查,视图层次分析) 3.跟踪代码 TraceView 4.命令行工具 adb 5.策略检查StrictMode

  9. Qt-QML-全新导航布局

    哈哈,写了一个全新的导航布局,具体内容还没有完成,现在先把整个布局的屏幕划分分享出来 先看效果图 身下也没有好说的,看代码 /* 作者:张建伟 时间:2018年4月3日 简述:该文件为下显主窗口布局文 ...

  10. selenium,unittest——两个class连续运行

    将多个class放在一个文件内一起运行,这是一个多用例不同网站进行测试的方法 #encoding=utf-8from selenium import webdriverimport time,unit ...