private void updateTabHost(TabHost tabHost) {
        int count = tabHost.getTabWidget().getChildCount();
        ; i < count; i++) {
            View view = tabHost.getTabWidget().getChildTabViewAt(i);
             // tab高度,此处单位为dp,经过DisplayUtil后转为px然后赋值
                    );
            view.getLayoutParams().height = tabHeightPx; // tabWidget.getChildAt(i)
            final TextView tv = (TextView) view
                    .findViewById(android.R.id.title);
            tv.setTextSize();
            tv.setTextColor(this.getResources().getColorStateList(
                    android.R.color.white));
        }
    }

这是更改其tabwidget样式的方法

private void changeLayout() {
        // 根据用户的点击位置的下标显示相应的fragment
        tabHost.setCurrentTab(currentlayout);
    }

    private void setFragment() {
        // 通过组件的id初始化tabHost的实例
        tabHost = (TabHost) findViewById(R.id.tabhost);
        tabHost.setup();
        // tabWidget = tabHost.getTabWidget();
        // 往tabHost分别添加fragment
        tabHost.addTab(tabHost
                .newTabSpec("main_social")
                .setIndicator(
                        "动态",
                        this.getResources().getDrawable(
                                R.drawable.checkbox_full_pressed))
                .setContent(R.id.frag_social));
        tabHost.addTab(tabHost
                .newTabSpec("main_geomark")
                .setIndicator(
                        "联系人",
                        this.getResources().getDrawable(
                                R.drawable.checkbox_full_pressed))
                .setContent(R.id.frag_geomark));
        tabHost.addTab(tabHost
                .newTabSpec("main_timeaxis")
                .setIndicator(
                        "动态",
                        this.getResources().getDrawable(
                                R.drawable.checkbox_full_pressed))
                .setContent(R.id.frag_timeaxis));

        tabHost.addTab(tabHost
                .newTabSpec("main_travel")
                .setIndicator(
                        "设置",
                        this.getResources().getDrawable(
                                R.drawable.checkbox_full_pressed))
                .setContent(R.id.frag_travel));

        tabHost.addTab(tabHost
                .newTabSpec("main_activity")
                .setIndicator(
                        "设置",
                        this.getResources().getDrawable(
                                R.drawable.checkbox_full_pressed))
                .setContent(R.id.frag_activity));

        updateTabHost(tabHost);//更新布局样式等

        tabHost.setCurrentTab();// 设置默认显示布局
    }

这是关联Fragment和tabWidget点击的方法,此方法放在onCreate方法内~

设置TabWidget的样式的方法、关联Fragment与tabwidget的方法、点击tab显示相应Fragment方法的更多相关文章

  1. Fragment生命周期及实现点击导航图片切换fragment,Demo

    PS:Fragment简介 Fragment是Android3.0后引入的一个新的API,他出现的初衷是为了适应大屏幕的平板电脑, 当然现在他仍然是平板APP UI设计的宠儿,而且我们普通手机开发也会 ...

  2. 关于设置SQLPLUS提示符样式的方法----登陆配置文件,动态加载提示符

    工作中用到 sqlplus mdsoss/mdsoss, 所以来了解一下sqlplus (C shell .cshrc文件里中alisa) 关于设置SQLPLUS提示符样式的方法 12638阅读 1评 ...

  3. 用NPOI创建Excel、合并单元格、设置单元格样式、边框的方法

    本篇文章小编为大家介绍,用NPOI创建Excel.合并单元格.设置单元格样式.边框的方法.需要的朋友参考下 今天在做项目中,遇到使用代码生成具有一定样式的Excel,找了很多资料,最后终于解决了,Ex ...

  4. Android下用程序的方法为ListView设置分割线Divider样式

    使用XML的时候可以使用android:divider属性为ListView设置分割线的样式(颜色或者资源文件),而在Java代码中默认提供的方法 listView.setDivider() 却只支持 ...

  5. jQuery使用之(二)设置元素的样式

    css是页面不能分隔的部分,jQuery中也提供了一些css相关的实用的办法.前面章节中有使用过 addClass()为元素添加css样式风格.本节主要介绍jQuery如何设置页面的样式风格.包括添加 ...

  6. 通过Spannable对象设置textview的样式

    通过Spannable对象我们可以设置textview的各种样式,其功能十分强大.通过SpannableString和它的setSpan(Object what, int start, int end ...

  7. UWP入门(四)--设置控件样式

    原文:UWP入门(四)--设置控件样式 官方定义:可以使用 XAML 框架通过多种方式自定义应用的外观. 通过样式可以设置控件属性,并重复使用这些设置,以便保持多个控件具有一致的外观. 可分享至不同e ...

  8. HTML基础(四)——设置超链接的样式示例

     ***设置超链接的样式示例  a:link 超链接被点前状态 a:visited 超链接点击后状态 a:hover 悬停在超链接时 a:active 点击超链接时 在定义这些状态时,有一个顺序l v ...

  9. 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句

    如题: 一对一关联查询时使用relation连贯操作查询后,调用getLastSql()方法输出的sql语句不是一条关联查询语句. 例如: $list = $db->relation(true) ...

随机推荐

  1. mySql 远程连接(is not allowed to connect to this MySQL server)

    如果你想连接你的mysql的时候发生这个错误: ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL serve ...

  2. testng教程之testng.xml的配置和使用,以及参数传递

    昨天学习了一下testng基础教程,http://www.cnblogs.com/tobecrazy/p/4579414.html 昨天主要学习的是testng 的annotation基本用法和生命周 ...

  3. JavaMail入门第五篇 解析邮件

    上一篇JavaMail入门第四篇 接收邮件中,控制台打印出的内容,我们无法阅读,其实,让我们自己来解析一封复杂的邮件是很不容易的,邮件里面格式.规范复杂得很.不过,我们所用的浏览器内置了解析各种数据类 ...

  4. ORCALE用户授权与创建同义词

    创建同义词: DROP public synonym marketmonitor_day; DROP public synonym marketmonitor_month; DROP public s ...

  5. linux进程管理之服务

     init进程首先通过initable查看运行级别,然后运行rc.d下面的sysinit,然后调用rc,然后运行rc###连接到init.d下面的服务.自启动. chkconfig命令只是查看和设置服 ...

  6. mysql函数操作(4)

    <?php ... $query = "INSERT INTO contactInfo (name, address, phone) VALUES (?, ?, ?)"; $ ...

  7. ChatGirl 一个基于 TensorFlow Seq2Seq 模型的聊天机器人[中文文档]

    ChatGirl 一个基于 TensorFlow Seq2Seq 模型的聊天机器人[中文文档] 简介 简单地说就是该有的都有了,但是总体跑起来效果还不好. 还在开发中,它工作的效果还不好.但是你可以直 ...

  8. VUE 计算属性 vs 侦听属性

    计算属性 vs 侦听属性 Vue 提供了一种更通用的方式来观察和响应 Vue 实例上的数据变动:侦听属性.当你有一些数据需要随着其它数据变动而变动时,你很容易滥用 watch——特别是如果你之前使用过 ...

  9. Flask的集中控制

    想通过一个统一的机制,同时允许一些公共的逻辑 {% if args["NoUser"] %} 无用户! {% else %} <!DOCTYPE html PUBLIC &q ...

  10. 源码之Java集合

    No1: ArrayList的扩容策略是,新容量扩大为原来的1.5倍. ArrayList不是线性安全的,因为没有使用synchronized关键字,但是优点是效率提高了.与之相比,Vector是线性 ...