`
Danny_zhao
  • 浏览: 9668 次
  • 性别: Icon_minigender_2
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

tabhost 背景设置

阅读更多

 

话不多说,直接看代码吧!

 

 

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);     
        setContentView(R.layout.main);    
        Resources res = getResources(); 
        final TabHost tabHost = getTabHost();  // The activity TabHost
        TabHost.TabSpec spec;  
        Intent intent;  // Reusable Intent for each tab        
        intent = new Intent().setClass(this, IndexActivity.class);
        spec = tabHost.newTabSpec("appInfo").setIndicator("",
                res.getDrawable(R.drawable.ic_tab_home))
                      .setContent(intent);
        tabHost.addTab(spec);
        intent = new Intent().setClass(this, TypeActivity.class);
        spec = tabHost.newTabSpec("type").setIndicator("",
                          res.getDrawable(R.drawable.ic_tab_type))
                      .setContent(intent);
        tabHost.addTab(spec);
        intent = new Intent().setClass(this, RankActivity.class);
        spec = tabHost.newTabSpec("rank").setIndicator("",
                res.getDrawable(R.drawable.ic_tab_rank))
            .setContent(intent);
        tabHost.addTab(spec);
        
        intent = new Intent().setClass(this, SearchActivity.class);
        spec = tabHost.newTabSpec("search").setIndicator("",
                res.getDrawable(R.drawable.ic_tab_search))
                .setContent(intent);
        tabHost.addTab(spec);
        
        intent = new Intent().setClass(this, ManageActivity.class);
        spec = tabHost.newTabSpec("manage").setIndicator("",
                res.getDrawable(R.drawable.ic_tab_manage))
                .setContent(intent);
        tabHost.addTab(spec);

        tabHost.setCurrentTab(0);
        
        View view ;
        tabWidget=tabHost.getTabWidget();
        for (int i = 0; i < tabWidget.getChildCount(); i++) {
//            获取tabview项
            view=tabWidget.getChildAt(i);
            view.setBackgroundResource(R.drawable.tab_normal); 
//            选择项处理
            if (tabHost.getCurrentTab()==i) {
                view.setBackgroundResource(R.drawable.tab_selected);  
            }
//            tabchanged的监听
            tabHost.setOnTabChangedListener(new OnTabChangeListener() {
                
                @Override
                public void onTabChanged(String tabId) {
                    // TODO Auto-generated method stub
                    for (int j = 0; j < tabHost.getTabWidget().getChildCount(); j++) {
                        View view=tabHost.getTabWidget().getChildAt(j);
                           // 设置tab背景颜色   
                        view.setBackgroundResource(R.drawable.tab_normal); 
                        // 选中的进行处理   
                        if (tabHost.getCurrentTab() == j) {  
                            view.setBackgroundResource(R.drawable.tab_selected);  
                        } 
                    }
                    
                }
            });
        }    
    }

 

分享到:
评论

相关推荐

    Tabhost自定义背景样式

    在本案例中,我们将深入探讨如何实现一个自定义的Tabhost背景样式,特别是点击时可以更换背景图片的功能。 首先,我们需要理解TabHost的基本结构。在XML布局文件中,TabHost通常包含一个TabWidget和一个FrameLayout...

    更改tabhost选项卡背景

    本文档用于解决更改安卓组件中的tabhost的选项卡背景图片的问题

    TabHost的使用方法

    如果需要自定义Tab的样式,如文字颜色、背景等,可以通过设置TabSpec的属性或者自定义View来实现。 6. **处理Tab切换事件** 为了在Tab切换时执行特定的操作,你可以监听`TabHost.OnTabChangeListener`。 ```java...

    android自定义TabHost

    如果需要在运行时改变背景颜色,可以在用户触发某个事件(如点击按钮)时,使用`ColorDrawable`动态设置TabHost的背景颜色,例如: ```java TabHost tabHost = (TabHost) findViewById(R.id.tabhost); tabHost....

    自定义TabHost实现背景图片随选项卡切换滑动效果

    本教程将详细讲解如何自定义TabHost,使其背景图片能够随着选项卡的切换而滑动,从而提供更丰富的用户体验。 首先,我们需要了解TabHost的基本使用。TabHost是一个包含TabWidget和FrameLayout的布局,TabWidget用于...

    解决TabHost下面白线

    3. 修改布局文件:检查TabHost所在的布局文件,确保没有设置额外的边距或背景色。也可以尝试设置`android:paddingBottom="0dp"`以消除底部的空白区域。 4. 使用自定义View:如果你仍然无法解决问题,可以考虑自定义...

    Android TabHost实现屏幕UI窗口的TAB切换功能.rar

    实现的过程:声明TabHost对象、取得TabHost对象,为TabHost添加标签,新建一个newTabSpec(newTabSpec),设置其标签和图标(setIndicator),设置内容(setContent),然后设置TabHost的背景颜色、TabHost的背景图片,...

    ViewPager和Tabhost结合,可滑动的tabhost

    2. **创建TabHost**:创建 `TabHost` 对象,并设置其布局,通常包含一个 `TabWidget` 用于显示标签,以及一个 `FrameLayout` 用于显示内容。 3. **关联ViewPager和TabHost**:使用 `TabHost.TabSpec` 来定义每个...

    tabhost 动态改变tab的背景图

    这篇博客“tabhost 动态改变tab的背景图”探讨了如何在运行时动态地更改TabHost中的各个tab的背景图像。这在设计用户界面时特别有用,因为它允许开发者根据用户的交互或特定条件来调整应用的视觉风格。 首先,我们...

    andorid中TabHost的使用

    2. 设置TabHost的宿主:调用TabHost的setup()方法,传入一个FrameLayout的ID作为参数。 3. 添加Tab:使用TabHost的newTabSpec()方法创建新的标签规格,然后设置标签文本、图标以及选中时显示的活动或视图。 4. 链接...

    android的tabhost学习

    如果需要自定义Tab的样式,例如改变文字颜色、背景等,可以通过创建自定义布局文件并将其设置为`TabSpec.setIndicator()`的参数来实现。 8. **注意点** - 在Android API 11及以上版本,TabHost已逐渐被...

    TabHost底部tab切换

    在给定的场景中,"TabHost底部tab切换"指的是用户点击`TabHost`中的不同标签时,不仅会切换到对应的内容,同时还会改变选中标签的背景颜色,以视觉上突出当前选中的选项。 **TabHost基础知识:** 1. **TabWidget**...

    Android Tabhost 实例demo

    5. **自定义外观**:为了使TabHost符合应用的UI设计,我们可以自定义标签的样式,包括文字颜色、背景色、图标等。这通常通过创建自定义的TabIndicator布局并设置到TabSpec中完成。 在"TabhostDemos"压缩包中,可能...

    垂直TabHost

    5. **自定义样式**:为了实现垂直TabHost的视觉效果,你可能需要自定义`TabWidget`的样式,例如更改标签的字体、颜色、背景等。这可以通过在项目的`res/values/styles.xml`文件中定义新的样式实现。 6. **适配器...

    TabHost自定义样式 自定义TabWidget

    - 在对应的Activity中,需要使用`setTabHost()`方法设置当前Activity为TabHost的宿主,然后调用`TabHost.getTabWidget().setCurrentTab()`来选择初始的选项卡。 3. View对象作为内容: - 如果不想启动新的...

    tabhost布局

    - 初始化TabHost:通常使用setContentView()方法设置TabHost的视图,并通过TabHost.setup()初始化它。 - 添加Tab:使用TabHost.addTab()方法为TabHost添加新的选项卡。这个方法需要传入TabSpec对象,其中包含了...

    美化TabHost

    - 使用StateListDrawable(状态选择器)为不同状态(按下、默认等)设置不同的背景和颜色,实现点击反馈效果。 3. 平面布局 - 避免使用传统的3D效果,改为平面设计,使整个界面更加简洁现代。 - 使用Material ...

    TabHost实现QQ分组

    `TabHost` 可以帮助构建类似QQ应用的分组布局,比如“消息”、“联系人”、“动态”和“设置”等主要功能区域。下面我们将深入探讨如何使用`TabHost`来实现这样的分组功能。 首先,理解`TabHost`的基本结构是至关...

    android TabHost

    1. **设置TabHost**:在XML布局文件中,我们需要声明`&lt;TabHost&gt;`作为根元素,并为其指定一个唯一ID(通常为`android:id/tabhost`)。然后,在`TabHost`内部,包含`&lt;TabWidget&gt;`和`&lt;FrameLayout&gt;`,分别用于展示标签...

    android开发 tabhost应用

    要创建一个TabHost应用,首先需要在XML布局文件中定义TabHost,并在其中设置TabWidget和FrameLayout。例如: ```xml &lt;TabHost android:id="@android:id/tabhost" android:layout_width="match_parent" android:...

Global site tag (gtag.js) - Google Analytics