一般来说,我都是用Android默认的Tab,但此时Android会根据你增加的Tab页面平均分配Tab标签,假如你只有两个Tab,那么长度将会很长,并且其高度略微过高,并不好看,网上解决这个问题有些是自定义Tab。我们仍然使用默认的Tab解决此问题。

修改前 代码、图片如下:

[java] view plaincopy
  1. import android.app.TabActivity;
  2. import android.graphics.Color;
  3. import android.os.Bundle;
  4. import android.view.LayoutInflater;
  5. import android.widget.TabHost;
  6. import android.widget.TabHost.OnTabChangeListener;
  7. public class MyTab extends TabActivity implements OnTabChangeListener {
  8. private TabHost myTabhost;
  9. @Override
  10. protected void onCreate(Bundle savedInstanceState) {
  11. // TODO Auto-generated method stub
  12. super.onCreate(savedInstanceState);
  13. myTabhost = this.getTabHost();
  14. // get Tabhost
  15. LayoutInflater.from(this).inflate(R.layout.main,
  16. myTabhost.getTabContentView(), true);
  17. myTabhost.setBackgroundColor(Color.argb(150, 22, 70, 150));
  18. myTabhost.addTab(myTabhost.newTabSpec("One")// make a new Tab
  19. .setIndicator("查询信息", getResources().getDrawable(R.drawable.gimp))
  20. // set the Title and Icon
  21. .setContent(R.id.widget_layout_Blue));
  22. // set the layout
  23. myTabhost.addTab(myTabhost
  24. .newTabSpec("Two")
  25. // make a new Tab
  26. .setIndicator("签到",
  27. getResources().getDrawable(R.drawable.mumule))
  28. // set the Title and Icon
  29. .setContent(R.id.widget_layout_green));
  30. }
  31. @Override
  32. public void onTabChanged(String tagString) {
  33. // TODO Auto-generated method stub
  34. }
  35. }

下面我就如何 改变Tab标签大小及间距作出说明:

我在网上查阅文档,如果要改变此大小或者间距,必须将标签栏宽高设为 wrapContent(其他的我尚未验证):以下为修改代码及其效果:

[java] view plaincopy
  1. import android.app.TabActivity;
  2. import android.graphics.Color;
  3. import android.os.Bundle;
  4. import android.view.LayoutInflater;
  5. import android.view.View;
  6. import android.view.ViewGroup.LayoutParams;
  7. import android.widget.LinearLayout;
  8. import android.widget.TabHost;
  9. import android.widget.TabWidget;
  10. import android.widget.TabHost.OnTabChangeListener;
  11. public class MyTab extends TabActivity implements OnTabChangeListener {
  12. private TabHost myTabhost;
  13. @Override
  14. protected void onCreate(Bundle savedInstanceState) {
  15. // TODO Auto-generated method stub
  16. super.onCreate(savedInstanceState);
  17. myTabhost = this.getTabHost();
  18. // get Tabhost
  19. LayoutInflater.from(this).inflate(R.layout.main,
  20. myTabhost.getTabContentView(), true);
  21. myTabhost.setBackgroundColor(Color.argb(150, 22, 70, 150));
  22. myTabhost.addTab(myTabhost.newTabSpec("One")// make a new Tab
  23. .setIndicator("查询信息", getResources().getDrawable(R.drawable.gimp))
  24. // set the Title and Icon
  25. .setContent(R.id.widget_layout_Blue));
  26. // set the layout
  27. myTabhost.addTab(myTabhost
  28. .newTabSpec("Two")
  29. // make a new Tab
  30. .setIndicator("签到",
  31. getResources().getDrawable(R.drawable.mumule))
  32. // set the Title and Icon
  33. .setContent(R.id.widget_layout_green));
  34. // 首先得到标签栏
  35. TabWidget tabWidget = myTabhost.getTabWidget();
  36. //设置标签栏宽高为 WRAP_CONTENT
  37. LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
  38. tabWidget.setLayoutParams(params);
  39. int count = tabWidget.getChildCount();
  40. //得到每一个标签,并设置其宽高
  41. for (int i = 0; i < count; i++) {
  42. View view = tabWidget.getChildTabViewAt(i);
  43. view.getLayoutParams().height = 50; //tabWidget.getChildAt(i)
  44. view.getLayoutParams().width = 80;
  45. }
  46. }
  47. @Override
  48. public void onTabChanged(String tagString) {
  49. // TODO Auto-generated method stub
  50. }
  51. }

转载于:https://www.cnblogs.com/firecode/archive/2012/11/26/2788684.html

Android 默认Tab标签大小及间距修改相关推荐

  1. Android默认系统声音/大小修改及配置

    在做定制需求的时候,需要修改系统通知的声音,将其禁用掉,避免第三方应用发送通知时,声音很大,吓着用户.索性就把通知声音关掉.下面就说说关闭声音的几种方法,以及修改系统默认声音的方法. 1. 直接修改系 ...

  2. android 设置ios 字体大小设置,解决修改系统字体大小APP字体跟着变大的问题

    前言 最近在做项目的时候,碰到了这个问题,具体是:app中字体大小用了sp,然后修改手机系统字体大小后,sp设置的文字大小跟着系统变了,导致了布局挤压以及一系列的问题,经过研究找到了解决方法,在此记录 ...

  3. Android 12.0 修改系统默认字体的大小

    目录 1.概述 2.修改系统默认字体的大小的核心类 3.修改系统默认字体的大小的核心功能实现和分析

  4. android的word默认字体大小设置,如何修改word的默认字体大小以便于写文章

    我平时写文章都喜欢用Word写好,然后在发布到相应博客网站上,但是每次打开word,默认的字体都是宋体和五号字体,个人感觉字体太小,所以每次我都手动调到四号或三号字体,然后才开始写文章.度娘之后才知道 ...

  5. Android 开源框架ViewPageIndicator 和 ViewPager 仿网易新闻客户端Tab标签

     转载请注明出处:http://blog.csdn.net/xiaanming/article/details/10766053 之前用JakeWharton的开源框架ActionBarSherl ...

  6. Android7.1修改系统默认多媒体音量大小

    Android7.1修改系统默认多媒体音量大小 始修改\frameworks\base\packages\SettingsProvider\res\values\defaults.xml def_mu ...

  7. android之tab分页标签的实现方法,Android应用中使用ViewPager和ViewPager指示器来制作Tab标签...

    一.ViewPageIndicator开源框架的基本用法我们先得去Github上面下载这个库,下载地址:https://github.com/JakeWharton/Android-ViewPager ...

  8. Android中自定义RatingBar实现星星大小,数量,间距等的设置

    前言   系统中自带的RatingBar使用起来非常不方便,并且无法调整合适大小,于是自定义一个可自己调节星星数量,大小,间距等属性的RatingBar Demo展示图片: 布局代码如下: //(la ...

  9. 苹果邮箱 android设置字体,MacOS如何修改邮件字体大小?MacOS修改邮件字体大小的方法...

    MacOS默认的字体大小是12号,如果您觉得查看邮件中字号太小,或者是太大了,不用担心,改变电子邮件的文字大小是相当简单的.您不仅可以更改邮件内容本身的字体大小,也可以改变电子邮件消息的其他组件字体大 ...

最新文章

  1. 为什么不推荐使用uuid或者雪花id作为主键?
  2. 最近刷爆朋友圈的一道面试题
  3. mac pycharm打不开解决方法
  4. 尚学python课程---11、linux环境下安装python注意
  5. 分布式文件系统—HDFS—常见面试题
  6. C++通过原子变量代替互斥量
  7. 【Node】新手入门 基于Express,Sequelize、IIS的MVC项目
  8. 禅道PMS兼容redmine用户认证接口
  9. LeetCode: Add Binary 解题报告
  10. np.random.seed()
  11. 易语言禁用计算机指令大全,易语言电脑屏幕锁定工具源码
  12. 子龙山人Learn Emacs in 21 Days: day 6 学习笔记
  13. 常见的web网站攻击类型
  14. Date Wed Mar 17 2021 13:52:00 GMT+0800 (中国标准时间) 转标准的日期格式
  15. 【JS正则表达式验证】
  16. 攻防世界-MISC-练习区-06(坚持60s)
  17. 小程序实现正计时和倒计时
  18. 三种数学语言的相互转化
  19. 酷我音乐 linux,GitHub - weakish/kwplayer: 酷我音乐盒的 Gtk/Linux 实现
  20. ESXi 6.7 ubuntu GPU直连踩坑记

热门文章

  1. vscode --- 快捷键格式化代码时,分号消失
  2. ES5-拓展 隐式数据类型转换
  3. java基础集合类——LinkedList 源码略读
  4. 真的要做一辈子的程序员吗?来自10年程序员的心声
  5. 【评分】第三次作业-团队展示
  6. async-await原理解析
  7. Android 从AndroidManifest获取meta-data
  8. dns-prefetch—DNS预解析技术
  9. Android 反射获取内外置存储卡方法
  10. 测试邮件系统需要做的准备工作