`
Jclick
  • 浏览: 189118 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 底部tab

阅读更多
默认的tabhost中的tabwidget是放在顶部的,有时需要将TAB移到底部来,这时需要在XML中做些细微的变动,如下:

view plaincopy to clipboardprint?
01.<?xml version="1.0" encoding="utf-8"?> 
02.<LinearLayout 
03.    xmlns:android="http://schemas.android.com/apk/res/android" 
04.    android:orientation="vertical" 
05.    android:layout_width="fill_parent" 
06.    android:layout_height="fill_parent"> 
07.    <TabHost 
08.        android:id="@+id/tabhost" 
09.        android:layout_width="fill_parent" 
10.        android:layout_height="fill_parent"> 
11.        <FrameLayout 
12.            android:id="@android:id/tabcontent" 
13.            android:layout_width="fill_parent" 
14.            android:layout_height="fill_parent" 
15.            android:paddingBottom="62px"> 
16.            <AnalogClock 
17.                android:id="@+id/tab1" 
18.                android:layout_width="fill_parent" 
19.                android:layout_height="fill_parent" 
20.                android:layout_centerHorizontal="true" /> 
21.            <Button 
22.                android:id="@+id/tab2" 
23.                android:layout_width="fill_parent" 
24.                android:layout_height="fill_parent" 
25.                android:text="A semi-random button" /> 
26.        </FrameLayout> 
27.        <RelativeLayout 
28.            android:layout_width="fill_parent" 
29.            android:layout_height="fill_parent"> 
30.            <TabWidget 
31.                android:id="@android:id/tabs" 
32.                android:layout_alignParentBottom="true" 
33.                android:layout_width="fill_parent" 
34.                android:layout_height="60px" /> 
35.        </RelativeLayout> 
36.    </TabHost> 
37.</LinearLayout> 
<?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="@+id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingBottom="62px">
<AnalogClock
android:id="@+id/tab1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_centerHorizontal="true" />
<Button
android:id="@+id/tab2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="A semi-random button" />
</FrameLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget
android:id="@android:id/tabs"
android:layout_alignParentBottom="true"
android:layout_width="fill_parent"
android:layout_height="60px" />
</RelativeLayout>
</TabHost>
</LinearLayout>

我们将tabWidget放到一个relativeLayout中,然后加上这句android:layout_alignParentBottom="true",代码实现如下

view plaincopy to clipboardprint?
01.public class TabTest2 extends Activity {  
02.    public void onCreate(Bundle icicle) {  
03.        super.onCreate(icicle);  
04.        setContentView(R.layout.tabtest2);  
05.        TabHost tabs=(TabHost)findViewById(R.id.tabhost);  
06.          
07.        tabs.setup();  
08.          
09.        TabHost.TabSpec spec=tabs.newTabSpec("tag1");  
10.        spec.setContent(R.id.tab1);  
11.        spec.setIndicator("Clock");  
12.        tabs.addTab(spec);  
13.          
14.        spec=tabs.newTabSpec("tag2");  
15.        spec.setContent(R.id.tab2);  
16.        spec.setIndicator("Button");  
17.        tabs.addTab(spec);  
18.          
19.        tabs.setCurrentTab(0);  
20.    }  
21.} 
public class TabTest2 extends Activity {
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.tabtest2);
TabHost tabs=(TabHost)findViewById(R.id.tabhost);

tabs.setup();

TabHost.TabSpec spec=tabs.newTabSpec("tag1");
spec.setContent(R.id.tab1);
spec.setIndicator("Clock");
tabs.addTab(spec);

spec=tabs.newTabSpec("tag2");
spec.setContent(R.id.tab2);
spec.setIndicator("Button");
tabs.addTab(spec);

tabs.setCurrentTab(0);
}
}

这样就可以把tab置于页面底部了,其实跟上次讲的LinearLayout的buttonBar样式有点类似

转载地址:http://blog.csdn.net/roadog2006/archive/2010/04/12/5475549.aspx
分享到:
评论

相关推荐

    Android底部Tab页基于ViewPager的实现

    通过以上步骤,你就可以实现一个基本的基于ViewPager的Android底部Tab页。这个“TabDemo”项目将展示如何将多个Fragment组织成一个可滑动的页面集,同时使用底部导航栏提供直观的页面切换方式。记住,Material ...

    Android底部tab栏与标题栏结合

    总之,Android底部tab栏与标题栏的结合,不仅增强了用户界面的可操作性,也为用户提供了一种直观的方式来浏览和操作应用的不同部分。通过合理的设计和编程实践,我们可以创建出既美观又实用的Android应用。

    Android底部Tab

    "Android底部Tab"的实现是通过在每个页面上保持一个固定的底部导航栏,使得用户无论在哪个子页面都能方便地访问其他主要功能。下面我们将深入探讨这一主题,包括其设计原则、实现方式以及相关的源码实践。 1. 设计...

    Android中底部tab,中间凸起按钮的效果

    本文将深入探讨如何在Android中实现这种特定的底部tab设计。 首先,底部导航栏是Android应用中常用的一种布局方式,它通常包含3到5个图标和对应的标签,用于在主要功能之间切换。在Android设计规范中,Bottom ...

    Android中底部导航条,底部tab中间凸起效果

    通过以上步骤,你可以实现一个具有中间凸起效果的Android底部导航条。这种设计不仅提升了用户体验,也使得特定功能更加突出,符合现代移动应用的设计趋势。在实际开发中,应确保代码的可维护性和性能优化,避免过度...

    android底部tab布局

    在Android应用开发中,底部Tab布局是一种常见的设计模式,它用于在多个功能模块间进行切换。本示例是高仿新浪微博的底部Tab布局,通过使用Activity来实现这一功能。我们将探讨如何利用Android的TabHost组件以及相关...

    Android滑动切换tab(切换带动画)

    在Android开发中,滑动切换Tab是一种常见的交互方式,它能为用户带来流畅且直观的体验。本教程将深入探讨如何在Android应用中实现带有动画效果的滑动切换Tab功能。 首先,我们需要理解Tab的基本概念。在Android中,...

    [源码]Android开发 漂亮底部Tab栏 标签 选项卡制作教程

    通过以上步骤,我们就完成了Android底部Tab栏的制作。在实际项目中,还可以根据需求进行更丰富的定制,比如自定义Tab样式、添加动画效果等。记住,良好的用户体验是应用成功的关键,因此在设计时要兼顾美观和实用性...

    Android主流APP底部Tab效果制作

    类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab切换效果类似微信底部tab...

    Android代码-fleep滑动切换tab切换带动画.zip

    在Android开发中,实现滑动切换Tab的效果是常见的需求,特别是在设计用户界面时,它能够提供流畅的用户体验,使得用户可以方便地在不同的内容区域之间切换。本项目"Android代码-fleep滑动切换tab切换带动画.zip"显然...

    安卓FragmentTab选项卡相关-android自定义中间带圆形按钮的底部导航控件.rar

    这个压缩包“安卓FragmentTab选项卡相关-android自定义中间带圆形按钮的底部导航控件.rar”似乎包含了一个定制化的底部导航条,该导航条在中间带有圆形按钮,这在许多现代移动应用中是流行的设计模式。 首先,...

    Android 自定义底部TAB

    本篇文章将深入探讨如何在Android中实现自定义的底部TAB,以满足个性化需求。 首先,我们需要理解Android的UI组件系统。在Android中,底部导航栏通常由`BottomNavigationView`或自定义视图来实现。对于自定义底部...

    android自定义的边缘凹凸的View

    在Android开发中,自定义View是一项重要的技能,它允许开发者根据设计需求创造出独特且富有交互性的界面元素。本文将深入探讨如何实现一个“android自定义的边缘凹凸的View”,也就是一个模仿卡券效果的视图。这个...

    Android 仿微信底部渐变Tab效果

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

    Android TAB仿微信底部菜单 文字滚动.rar

    Android 采用TAB的方式实现微信底部菜单,并且配合单击操作实现主界面的文字滚动。  这里创建了ViewPager mViewPager用来放置界面切换,初始化View适配器后,新建ArrayList,用来存放微信底部菜单的4个Tab,四个Tab...

    android Tab底部切换

    在Android开发中,Tab底部切换是一种常见的用户界面设计,它允许用户通过点击底部的标签来在不同的内容页面之间切换。这种设计模式提高了应用的可导航性,使得用户能轻松访问应用的主要功能。以下是对"android Tab...

    自定义Android中TabHost组件显示在屏幕底部,并实现滑动切换页面(源码下载)

    同时,可能还需要对父布局设置`android:orientation="vertical"`和`android:gravity="bottom"`,确保整个布局从顶部到底部填充。 接下来,我们实现滑动切换页面的效果。这通常通过使用ViewPager组件来完成。...

Global site tag (gtag.js) - Google Analytics