`
endual
  • 浏览: 3573081 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Android Tab的使用总结 转

 
阅读更多

使用TabHost 可以在一个屏幕间进行不同版面的切换,例如android自带的拨号应用。 
完成一个TabHost的步骤: 
一、设计布局文件,Tabhost布局文件一般使用FrameLayout,在FrameLayout中添加每个Tab页面的视图,但必须要有id,例如: 
<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" android:layout_height="fill_parent"> 

<!-- 第一个Tab 对应的布局 --> 
<!-- Tab内容必须用Layout布局将view包含,否则在程序中找不到View --> 
<LinearLayout android:id="@+id/tab01" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:orientation="vertical"> 
<ListView android:id="@+id/weather" android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
</ListView> 
</LinearLayout> 

<!-- 第二个Tab 对应的布局 --> 
<LinearLayout android:id="@+id/tab02" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:orientation="vertical"> 
<TextView android:id="@+id/weath_detail" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:text="tab"> 
</TextView> 
</LinearLayout> 

<!-- 第三个Tab 对应的布局 --> 
<LinearLayout android:id="@+id/tab03" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:orientation="vertical"> 
<TextView android:id="@+id/city_detail" android:layout_width="fill_parent" 
android:layout_height="fill_parent" android:text="tab"> 
</TextView> 
</LinearLayout> 
</FrameLayout> 

注意:每个Tab页面都要有自己的layout,负责在代码中通过Id无法找到相对应的视图 
二、创建展示TabHost的Activity。 
     1、我们可以直接继承TabActivity,再通过getTabHost()方法得到TabHost对象。例如: 
     protected void onCreate(Bundle savedInstanceState) 
    { 
        super.onCreate(savedInstanceState); 
        myTabHost = this.getTabHost(); 
        //绑定布局文件 
        LayoutInflater.from(this).inflate(R.layout.tab_host, 
            myTabHost.getTabContentView(), 
            true); 
        
        initTabHost(); 
        setTitle(weather.getCityName()); 
        //设定显示内容 
        setContentView(myTabHost); 
    } 

    2,为TabHost添加要显示的tab,一个tab就是相应的一个选项卡。例如: 
     //添加tab 
        myTabHost.addTab(myTabHost.newTabSpec(TAB_1)  //tab的Tag 
            .setIndicator("城市天气")  //tab的标题 
            .setContent(R.id.tab01)); //tab的显示内容 
        myTabHost.addTab(myTabHost.newTabSpec(TAB_2) 
            .setIndicator("天气详情") 
            .setContent(R.id.tab02)); 
        myTabHost.addTab(myTabHost.newTabSpec(TAB_3) 
            .setIndicator("城市介绍") 
            .setContent(R.id.tab03)); 
    3,为Tabhost添加选项卡改变监听,在选项卡改变时做相应处理。例如: 
        //添加OnTabChangedListener监听,此监听为选项卡改变监听 
        myTabHost.setOnTabChangedListener(this); 
      监听处理方法 
       public void onTabChanged(String tabId) 
    { 
        if (tabId.equals(TAB_1)) 
        { 
            //初始化标签1 
            initTab1(); 
        } 
        else if (tabId.equals(TAB_2)) 
        { 
            //初始化标签2 
            initTab2(); 
        } 
        else if (tabId.equals(TAB_3)) 
        { 
            //初始化标签3 
            initTab3(); 
        } 
        
    } 

  4,修改Tab显示内容 
    private void initTab2() 
    { 
        //得到tab内容的视图 
        TextView weathDetailText = (TextView)findViewById(R.id.weath_detail); 
        weathDetailText.setText(weather.getLiveWeather()); 
    }

分享到:
评论

相关推荐

    Android tab 栏居中滚动

    总结来说,"Android Tab 栏居中滚动"涉及到`TabLayout`与`ViewPager`的结合使用,自定义Tab视图和滑动事件的处理,以及可能的日期选择功能的实现。通过巧妙地组合和扩展这些组件,开发者可以构建出具有专业视觉效果...

    Android的Tab方法

    总结起来,Android中实现Tab布局的方法多种多样,从早期的TabHost到现代的TabLayout,开发者可以根据项目的兼容性需求和设计风格选择合适的方式。随着Android框架的发展,Tab的实现方式也在不断进化,提供更优质的...

    Android项目Tab类型主界面大总结 Fragment+TabPageIndicator+ViewPager

    在Android应用开发中,创建一个具有Tab切换功能的主界面是非常常见的需求,这可以提供多面板的用户体验。本文将深入探讨如何使用Fragment、TabPageIndicator和ViewPager来实现这样的Tab类型主界面,参考的代码示例...

    android纵向的tab

    总结来说,创建一个Android纵向的Tab布局需要自定义TabLayout的样式和行为,包括设置Tab的垂直对齐、滚动模式以及处理点击事件。通过与ViewPager结合使用,可以轻松地在多个内容视图之间切换。记住,始终关注用户...

    Android多个TAB选项卡切换效果

    在Android中,我们可以使用`ViewPager`配合`TabLayout`或者自定义的Tab控件来完成这一任务。在给定的描述和代码片段中,开发者选择了一种自定义的实现方式,使用`PagerSlidingTabStrip`库来创建选项卡切换效果。 `...

    android tab layout 实例

    总结起来,Android Tab Layout是构建多视图应用程序的重要工具,它提供了简洁且易于使用的界面。同时,DFA的概念可以在处理用户输入和优化资源管理等方面发挥作用,提升应用的性能和用户体验。通过结合这两者,...

    android tab源代码

    总结一下,"android tab源代码"是一个很好的学习资源,涵盖了Android中的TabHost、Fragment、自定义布局以及用户交互等方面的知识。通过分析和实践这个例子,初学者可以深入理解Android中的tab布局设计,并能进一步...

    android tab 切换 整理

    总结来说,Android中的Tab切换可以通过多种方式实现,从传统的TabHost到现代的TabLayout+ViewPager。开发者可以根据项目需求选择合适的方法,并利用动画效果提升交互体验。 DWinterTabDemo.zip可能是一个实际的示例...

    ViewStub_Tab.rar_Tabú_android tab

    总结来说,"ViewStub_Tab.rar_Tabú_android tab"提供的示例展示了如何巧妙利用ViewStub这一轻量级组件,配合TabLayout和ViewPager,实现Android应用中的动态加载Tab功能。这种方法既节省资源,又提高了用户体验,是...

    android Tab标签的使用

    总结起来,Android中的Tab标签使用涉及到`TabLayout`、`ViewPager`和`Fragment`的组合,以及自定义适配器和事件监听。通过合理的设计和编程,可以创建出具有滑动效果的底部或顶部标签,为用户提供流畅的多页面导航...

    android 多个Tab的切换

    总结来说,Android中实现多个Tab的切换有多种方式,如传统的TabHost,或者是现代的TabLayout+ViewPager组合。选择哪种方式取决于项目需求和对兼容性的考虑。无论采用何种方法,理解并熟练掌握这些技术对于Android...

    android的tab布局简单例子

    总结来说,Android的Tab布局通过TabHost组件实现,结合TabSpec、TabWidget和FrameLayout可以创建出多Tab的界面。开发者可以选择用Activity或Fragment来承载每个Tab的内容,根据实际需求选择最适合的方式。在实际项目...

    Android TAB

    总结来说,"Android TAB"是Android应用中常用的一种导航方式,开发者可以根据需求选择TabHost、FragmentTabHost或TabLayout+ViewPager等不同方案来实现。随着Android版本和设计规范的更新,Tab的实现方式也在不断...

    Android 仿微信底部渐变Tab效果

    Android 仿微信底部渐变Tab效果知识点总结 在 Android 开发中,实现仿微信底部渐变 Tab 效果是一项非常有趣的挑战。通过本文,我们将逐步实现这个功能,包括自定义 View 的设计、颜色渐变的实现、图标的绘制、文字...

    Android 高仿华为Tab页的滑动导航功能

    总结起来,实现Android高仿华为Tab页的滑动导航功能,需要结合LinearLayout和HorizontalScrollView布局组件,配合ViewPager和自定义TabLayout,通过适配器管理页面内容。在设计和实现过程中,应注重用户体验,优化...

    Android模仿飞信Tab

    总结来说,"Android模仿飞信Tab"项目旨在实现类似飞信的Tab功能,通过选择合适的Tab实现方式,结合图片资源和代码,为用户提供便捷的多视图切换体验。开发者可以参考这个项目学习如何在Android应用中创建和管理Tab,...

    android tab练习

    总结来说,"android tab练习"是一个很好的学习资源,涵盖了创建Tab布局和与ViewPager集成的关键知识点。通过这个项目,初学者可以深入理解Android Tab的实现机制,并学会如何在实际项目中运用。

    android的tab例子

    总结,Android的Tab例子是一个实用的功能,它能够帮助开发者创建具有多标签的用户界面。通过TabLayout和ViewPager的组合,我们可以轻松实现动态添加和管理Tab,同时还能根据需求进行高度定制。了解并熟练运用这些...

    android底部tab布局

    使用Android的TabHost组件,我们可以方便地创建多Tab界面,并通过设置不同的Intent来切换不同的Activity。同时,通过自定义Tab的样式,可以使得布局更加符合应用的设计风格。在实际开发中,还可以根据需求扩展功能,...

    android tab效果

    总结起来,"android tab效果"主要涉及使用TabHost或ViewPager来构建一个多标签页的用户界面。在较旧的Android版本中,如2.3,TabHost是标准方法,而随着版本更新,ViewPager和Fragment成为了更推荐的选择,提供了更...

Global site tag (gtag.js) - Google Analytics