在这里,我制作了5个工作正常的Tab按钮,但现在我想为每个Tab添加图标,如何相对于Tab按钮添加Tab图标….请指导/帮助我.

我第一次使用stackOverflow,请告诉我在发布此代码时是否错过了任何步骤…

提前致谢

package com.vishesh.soapbox;

import android.app.TabActivity;

import android.content.Context;

import android.content.Intent;

import android.content.res.Resources;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.widget.Button;

import android.widget.TabHost;

import android.widget.TextView;

import android.widget.TabHost.TabSpec;

public class Start extends TabActivity {

private TabHost tabHost;

//Resources res=getResources();

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.start);

//textView for signout from application

TextView signout=(TextView)findViewById(R.id.signout);

signout.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

finish();

}

});

// scan button use for read the BarCode through RedLaser

Button scan=(Button)findViewById(R.id.scan);

final Intent intent=new Intent(this,RLSample.class);

scan.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {

startActivity(intent);

}

});

//for Tab button

tabHost=getTabHost();

setupTabhost();

Intent intent1=new Intent().setClass(this, SoapBox.class);

setupTab(new TextView(this),"SoapBox", intent1);

Intent intent2=new Intent().setClass(this, Profile.class);

setupTab(new TextView(this),"Profile", intent2);

Intent intent3=new Intent().setClass(this, Challenges.class);

setupTab(new TextView(this),"Challenges", intent3);

Intent intent4=new Intent().setClass(this, Vault.class);

setupTab(new TextView(this),"Vault", intent4);

Intent intent5=new Intent().setClass(this, More.class);

setupTab(new TextView(this),"More", intent5);

tabHost.setCurrentTab(0);

}

private void setupTabhost()

{

tabHost=(TabHost)findViewById(android.R.id.tabhost);

tabHost.setup();

}

private void setupTab(final View view, final String tag, Intent intent)

{

View tabView=createTabView(tabHost.getContext(),tag);

TabSpec tabSpec=tabHost.newTabSpec(tag).setIndicator(tabView).setContent(intent);

tabHost.addTab(tabSpec);

}

private static View createTabView(final Context context, final String text)

{

View view=LayoutInflater.from(context).inflate(R.layout.start_tabs_bg, null);

TextView textView=(TextView)view.findViewById(R.id.tabsText);

textView.setText(text);

return view;

}

}

解决方法:

Vishesh,

如果看示例HERE …

spec = tabHost.newTabSpec("albums").setIndicator("Albums",

res.getDrawable(R.drawable.ic_tab_albums))

.setContent(intent);

可绘制图标在对setIndicator()的调用中传递.您也可以用tag变量替换两个“专辑”字符串.

虽然,目前看来您正在为标签使用自定义视图.您只需要向布局添加一个ImageView并将可绘制对象设置为所需的图标即可.

标签:android-widget,android

来源: https://codeday.me/bug/20191102/1992192.html

android中给button加图标,Android,如何在我的代码中的TabButton中添加图标相关推荐

  1. 一加3 android 8.0,一加3 android 8.0 启动uiautomator server失败

    Versions (版本) Version: 0.1.3.dev26 Issue and steps to reproduce (复现步骤) 执行以下代码报错 phone = u2.connect(' ...

  2. 【Android 安全】DEX 加密 ( 不同 Android 版本的 DEX 加载 | Android 8.0 版本 DEX 加载分析 | Android 5.0 版本 DEX 加载分析 )

    文章目录 一.不同版本的 DEX 加载 1.Android 8.0 版本 DEX 加载分析 2.Android 6.0 版本 DEX 加载分析 3.Android 5.0 版本 DEX 加载分析 一. ...

  3. Android给文档加水印,Android文档水印之PDF水印

    随着移动终端办公化的普及,在Android手机中阅读文档已经是很普遍的事情了,但是有些文档可能是涉及到一些企业机密与敏感的内容,不希望随意扩散出去.为了防止重要的文档被截屏或者拍照而泄露,在文档中加上 ...

  4. android webview 多次加载,android – 重复webview,我想在每个加载相同

    如何在分屏中显示两个类似的webview,我想复制一个webview,我想同时滚动两个.谢谢 android:layout_width="match_parent" android ...

  5. 一加6 android p测试,一加发布Android P公测版 一加手机6可升级

    Android P正式版已经发布,国内手机厂商也开始了测试阶段,其中,一加手机今日公布消息,已经为旗下的一加手机6提供了Android P公测版升级. [PChome手机频道资讯报道]Android ...

  6. android toast前面自动加内容,android Toast大全(五种情形)建立属于你自己的Toast...

    Toast用于向用户显示一些帮助/提示.下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast. 1.默认效果 代码 Toast.makeText(getApplicationCo ...

  7. android html.fromhtml 字体加粗,Android Html设置TextView的颜色、加粗样式

    01.概述 在开发需求中,会遇到字符串中的某个部分变色,加粗的需求.当然可是使用SpannableString 来实现,这里记录一下通过Html方式来实现这种效果 textView.setText(H ...

  8. Android给文档加水印,android:给整个页面添加上水印

    [实例简介] 这个demo实现了在整个activity上加上水印的效果,加上水印后对别的控件没有任何影响 [实例截图] [核心代码] WaterMark └── WaterMark ├── Andro ...

  9. android日期函数前加0,Android手机开发:日期函数之判断某日期格式是否之前+计算某日期之前N天或之后N天的日期...

    1. 判断某日期格式是否正确 /** * 判断日期格式是否正确 */ public static boolean IsDateFormat(String dataStr) { boolean stat ...

最新文章

  1. 使用NVIDIA GRID vPC支持视频会议和算力工具
  2. 查询时注意 查询字段传值参数类型,尽量和数据库字段类型一致
  3. ASP:HTML在线编辑器的调用方法和使用方法详解
  4. 短视频出海的关键指标、挑战及应对
  5. Linux stmac网卡代码分析 -- open
  6. Magento: 获取客户信息 Get Customer’s Full Name, First Name, Last Name and Email Addres
  7. batch spring 重复执行_spring-batch – Spring批处理:重新启动作业,然后自动启动下一个作业...
  8. 图像处理(2)---图像处理的基本算法
  9. 金蝶K3 数据表知识整理(不断完善)
  10. 安装VMware虚拟机及镜像文件
  11. 移动机器人运动控制算法入门
  12. python下载加密m3u8_基于Python3实现的m3u8批量下载器 解密合并多线程 (开车新姿势~)...
  13. C盘中的Users\admin文件夹太大清理方法
  14. html快闪软件制作,快闪文字视频制作
  15. 计算机视觉数据增强方法汇总
  16. 每日一题-Acwing2058笨拙的手指-位运算-枚举
  17. 二向箔-百日打卡writeup21-25
  18. php基础巩固,PHP基础巩固视频教程下载
  19. 如何成为一名合格的数据架构师?
  20. python 实战之模仿开发QQ聊天软件(一)登录GUI设计

热门文章

  1. python两个中文队列比较_具有两个优先级的优先级队列Python
  2. linux vim 快速定位位置,vim快速移动定位的一些操作命令
  3. Haproxy实现负载均衡
  4. linux文件什么权限比较安全,linux文件安全与权限
  5. 图解:为什么非公平锁的性能更高?
  6. 图解面试题:找出数组中重复的数字?
  7. 面试官 | 为什么用了索引之后,查询就会变快?
  8. react native android6+拍照闪退或重启的解决方案
  9. 转:ORA-01126: 数据库必须已装载到此实例并且不在任何实例中打开
  10. CentOS 7 利用Docker搭建Showdoc文档管理系统