TabHost.TabSpec

代码如下:

Xml代码  
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FrameLayout android:id="@+id/settingTab"
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:layout_width="fill_parent" android:layout_height="fill_parent">
  5. <LinearLayout android:id="@+id/scheduleSetting" android:layout_width="fill_parent" android:layout_height="fill_parent">
  6. <TextView android:id="@+id/tv01" android:layout_width="wrap_content"
  7. android:layout_height="wrap_content" android:text="@string/setting_schedule" />
  8. </LinearLayout>
  9. <LinearLayout android:id="@+id/taskSetting" android:layout_width="fill_parent" android:layout_height="fill_parent">
  10. <TextView android:id="@+id/tv02" android:layout_width="wrap_content"
  11. android:layout_height="wrap_content" android:textSize="24dip"
  12. android:text="@string/setting_task" />
  13. </LinearLayout>
  14. </FrameLayout>

Activity:

Java代码  
  1. public class SettingActivity extends TabActivity {
  2. private TabHost tab = null;
  3. @Override
  4. public void onCreate(Bundle savedInstanceState) {
  5. super.onCreate(savedInstanceState);
  6. tab = this.getTabHost();
  7. LayoutInflater.from(this).inflate(R.layout.setting,
  8. tab.getTabContentView(), true);
  9. tab.addTab(tab.newTabSpec("schedulTab").setIndicator(
  10. getString(R.string.setting_schedule),
  11. this.getResources().getDrawable(R.drawable.calendar))
  12. .setContent(R.id.scheduleSetting));
  13. tab.addTab(tab.newTabSpec("taskTab").setIndicator(
  14. getString(R.string.setting_task),
  15. this.getResources().getDrawable(R.drawable.settings))
  16. .setContent(R.id.taskSetting));
  17. //下面设置icon和文字左右排;
  18. TabWidget tabWidget = tab.getTabWidget();
  19. for (int i = 0; i < tabWidget.getChildCount(); i++) {
  20. TextView tv = (TextView) tabWidget.getChildAt(i).findViewById(
  21. android.R.id.title);
  22. ImageView iv = (ImageView) tabWidget.getChildAt(i).findViewById(
  23. android.R.id.icon);
  24. iv.setPadding(10, 0, 0, 0);
  25. tv.setPadding(50, 0, 0, 0);
  26. RelativeLayout.LayoutParams paramsLeft = new RelativeLayout.LayoutParams(
  27. RelativeLayout.LayoutParams.WRAP_CONTENT,
  28. RelativeLayout.LayoutParams.WRAP_CONTENT);
  29. paramsLeft.addRule(RelativeLayout.ALIGN_RIGHT);
  30. paramsLeft.addRule(RelativeLayout.CENTER_VERTICAL, RelativeLayout.TRUE);
  31. iv.setLayoutParams(paramsLeft);
  32. RelativeLayout.LayoutParams paramsRight = new RelativeLayout.LayoutParams(
  33. RelativeLayout.LayoutParams.WRAP_CONTENT,
  34. RelativeLayout.LayoutParams.WRAP_CONTENT);
  35. paramsRight.addRule(RelativeLayout.ALIGN_RIGHT);
  36. paramsRight.addRule(RelativeLayout.CENTER_VERTICAL, RelativeLayout.TRUE);
  37. tv.setLayoutParams(paramsRight);
  38. tv.setTextColor(Color.BLACK);
  39. }
  40. }
  41. }

效果如下图:

TabHost.TabSpec中的标签实现图文左右排(默认上下排)相关推荐

  1. android textview 添加图片大小,Android_Android中使用TextView实现图文混排的方法,向TextView或EditText中添加图像比 - phpStudy...

    Android中使用TextView实现图文混排的方法 向TextView或EditText中添加图像比直接添加文本复杂一点点,需要用到标签. 只有一个src属性,该属性原则上应该指向一个图像地址或可 ...

  2. 计算机基础图文混排教案,中职《Word图文混排》教学设计|word图文混排教学设计...

    摘 要 文章举例说明了中等职业学校计算机教学中的<word图文混排>教学设计并通过此设计实现了图文混排在实际生活中的应用,培养及提高了学生团结合作.分析问题和解决问题的能力,特别是应用计算 ...

  3. html中select标签刷新后不回到默认值而是保持之前选择值

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  4. tab使用 TabActivity TabHost Tabspec常用方法

    本文是参考Android官方提供的sample里面的ApiDemos的学习总结. TabActivity 首先Android里面有个名为TabActivity来给我们方便使用.其中有以下可以关注的函数 ...

  5. iOS-Swift3富文本(UILable文本图文混排)

    转载注明出处:http://blog.csdn.net/qxuewei/article/details/53213636 介绍下iOS开发中常用的符文布图文混排 需求: 邱学伟是大帅哥(加个笑脸图片) ...

  6. 【游戏开发实战】Unity UGUI Text图文混排(聊天文字混表情),支持动态表情,出招吧表情帝

    文章目录 一.前言 二.最终效果 三.具体使用 1.导入表情素材 2.设置图片格式 3.生成表情图集 4.UI-EmojiFont.shader 5.材质球 四.测试 五.结束语 一.前言 点关注不迷 ...

  7. 如何获取FragmentTabHost中指定标签页的Fragment

    使用FragmentTabHost构建了包含几个标签页的界面,如何获取指定标签页的Fragment? How to get Fragment in FragmentTabHost? TabHost中F ...

  8. android中文api (59) —— TabHost.TabSpec

    前言 本章内容是 android.widget.TabHost.TabSpec,版本为Android 2.3 r1,翻译来自"madgoat",欢迎大家访问他的博客:http:// ...

  9. python 输出结果图文混排_div css图文混排列表设计中的基础问题总结

    最近业务需要,想设计一个比较通用的图文混排的列表.结果设计的过程中遇到了不少问题,虽然都是一些css设计中比较基础的问题,但是自己认为有必要总结下,希望可以帮到一些css设计的初学者,同时也想扩大下自 ...

最新文章

  1. Node.js复制/删除服务器端文件到指定目录文件夹下,并且预判是否存在该目录,如果没有,则递归创建该文件夹目录
  2. 2016-2017 ACM-ICPC Pacific Northwest Regional Contest (Div. 2) 【部分题解】
  3. 攻防世界 适合做桌面_网络安全工程师教你:如何使用Kali Linux进行渗透测试与攻防实战...
  4. Spring-jdbc-AbstractRoutingDataSource
  5. SQL_Server快捷键
  6. smarty capture使用
  7. xp系统如何打开端口服务器,xp系统如何开启445端口?
  8. django学习日志(模板的渲染过程)第八部分:字符串数据转义
  9. KV存储相关基础知识
  10. matplotlib 配色之内置 colormap
  11. 软件质量(ISO/IEC 9126)的定义与特性
  12. MYSQL学习整理(4):函数
  13. Linux的常见操作系统
  14. 巴鲁夫使用CAE数据扩展其产品目录
  15. 将项目从 SVN 迁移到 GIT
  16. 在智能制造背景下,MES有哪些发展趋势?
  17. 给Python漫画分集标题目录下载工具添加从列表文件下载功能
  18. 基本算法练习——投篮游戏
  19. macOS 终端设置http和https代理
  20. bim机电建模:快速翻弯,打断,管线连接,排布一键解决!

热门文章

  1. 【Flutter】HTTP 网络操作 ( 引入 http 插件 | 测试网站 | Get 请求 | Post 请求 | 将响应结果转为 Dart 对象 | Future 异步调用 )
  2. 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库到 Android Studio 工程 | 配置 build.gradle 构建脚本 )
  3. 【计算理论】计算理论总结 ( 非确定性有限自动机 NFA 转为确定性有限自动机 DFA | 示例 ) ★★
  4. 【Android 异步操作】Handler ( 主线程中的 Handler 与 Looper | Handler 原理简介 )
  5. 【约束布局】ConstraintLayout 屏障 Barrier 约束 ( 简介 | 屏障适用场景 | 位置说明 | 相关属性 | 可视化操作 | 代码示例 | 总结 )
  6. 2019.04.09 电商23 用户未登录操作数据库
  7. pgjdbc源码分析
  8. 关于datagrid中控件利用js调用后台方法事件的问题
  9. DarkTrack 4 Alien Version Released RAT 下载地址视频教程
  10. leetcode345——Reverse Vowels of a String(C++)