package com.api.example.app;
import java.util.ArrayList;
import java.util.List;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TabWidget;
import android.widget.TextView;
import com.api.R;
import com.api.TabHostActivity;
/**
* <p>整个流程就像使用ListView自定BaseAdapter一样</p>
*
* <p>如果要自定义TabHostActivity的Theme,并且不想要头部阴影
* 一定要添加这个android:windowContentOverlay = null</p>
*
* <p>如果想在别的项目里面使用TabHostActivity
* 可以项目的属性里面找到Android,然后在Library部分添加这个项目(Api)
* <a href="http://www.cnblogs.com/qianxudetianxia/archive/2011/05/01/2030232.html">如何添加</a></p>
* */
public class ExampleActivity extends TabHostActivity {
List<TabItem> mItems;
private LayoutInflater mLayoutInflater;
/**在初始化TabWidget前调用
* 和TabWidget有关的必须在这里初始化*/
@Override
protected void prepare() {
TabItem home = new TabItem(
"首页", // title
R.drawable.icon_home, // icon
R.drawable.example_tab_item_bg, // background
new Intent(this, Tab1Activity.class)); // intent
TabItem info = new TabItem(
"资料",
R.drawable.icon_selfinfo,
R.drawable.example_tab_item_bg,
new Intent(this, Tab2Activity.class));
TabItem msg = new TabItem(
"信息",
R.drawable.icon_meassage,
R.drawable.example_tab_item_bg,
new Intent(this, Tab3Activity.class));
TabItem square = new TabItem(
"广场",
R.drawable.icon_square,
R.drawable.example_tab_item_bg,
new Intent(this, Tab4Activity.class));
TabItem more = new TabItem(
"更多",
R.drawable.icon_more,
R.drawable.example_tab_item_bg,
new Intent(this, Tab5Activity.class));
mItems = new ArrayList<TabItem>();
mItems.add(home);
mItems.add(info);
mItems.add(msg);
mItems.add(square);
mItems.add(more);
// 设置分割线
TabWidget tabWidget = getTabWidget();
tabWidget.setDividerDrawable(R.drawable.tab_divider);
mLayoutInflater = getLayoutInflater();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setCurrentTab(0);
}
/**tab的title,icon,边距设定等等*/
@Override
protected void setTabItemTextView(TextView textView, int position) {
textView.setPadding(3, 3, 3, 3);
textView.setText(mItems.get(position).getTitle());
textView.setBackgroundResource(mItems.get(position).getBg());
textView.setCompoundDrawablesWithIntrinsicBounds(0, mItems.get(position).getIcon(), 0, 0);
}
/**tab唯一的id*/
@Override
protected String getTabItemId(int position) {
return mItems.get(position).getTitle(); // 我们使用title来作为id,你也可以自定
}
/**点击tab时触发的事件*/
@Override
protected Intent getTabItemIntent(int position) {
return mItems.get(position).getIntent();
}
@Override
protected int getTabItemCount() {
return mItems.size();
}
/**自定义头部文件*/
@Override
protected View getTop() {
return mLayoutInflater.inflate(R.layout.example_top, null);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android底部标签TabHost框架
共81个文件
png:32个
class:19个
xml:10个
3星 · 超过75%的资源 需积分: 9 13 下载量 24 浏览量
2013-07-17
15:08:36
上传
评论
收藏 177KB ZIP 举报
温馨提示
底部使用标签是一个移动项目经常用到的 这里是已经写好的底部Tab框架 可以直接继承调用
资源推荐
资源详情
资源评论
收起资源包目录
tab_api.zip (81个子文件)
api
AndroidManifest.xml 1KB
res
layout
example_activity.xml 579B
example_top.xml 1KB
listview_item.xml 478B
api_tab_item.xml 493B
api_tab_host.xml 1KB
drawable-ldpi
ic_launcher.png 2KB
drawable
example_tab_item_bg.xml 356B
drawable-mdpi
ic_launcher.png 3KB
.DS_Store 12KB
drawable-hdpi
maintab_toolbar_bg.png 127B
toolbar_saysomething_icon.png 2KB
icon_selfinfo.png 2KB
titlebar_bg_nor.png 289B
home_btn_bg_d.png 5KB
.DS_Store 6KB
icon_more.png 1KB
home_btn_bg_n.png 592B
tab_divider.png 965B
icon_meassage.png 1KB
icon_home.png 1KB
home_btn_bg_s.png 4KB
toolbar_refresh_icon.png 2KB
icon_square.png 965B
ic_launcher.png 4KB
values
strings.xml 106B
colors.xml 156B
styles.xml 984B
proguard.cfg 1KB
src
com
api
TabHostActivity.java 2KB
example
MainActivity.java 2KB
app
Tab5Activity.java 444B
Tab2Activity.java 475B
TabItem.java 833B
ExampleActivity.java 3KB
Tab3Activity.java 477B
Tab1Activity.java 445B
Tab4Activity.java 477B
bin
classes
com
api
R$color.class 401B
R.class 528B
R$layout.class 517B
R$attr.class 307B
R$style.class 683B
example
app
ExampleActivity.class 3KB
Tab2Activity.class 752B
Tab4Activity.class 752B
TabItem.class 1KB
Tab5Activity.class 752B
Tab1Activity.class 752B
Tab3Activity.class 752B
MainActivity$Item.class 847B
MainActivity$MyAdapter.class 2KB
MainActivity.class 2KB
TabHostActivity.class 3KB
R$id.class 568B
R$string.class 365B
R$drawable.class 912B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-mdpi
ic_launcher.png 2KB
drawable-hdpi
maintab_toolbar_bg.png 127B
toolbar_saysomething_icon.png 2KB
icon_selfinfo.png 2KB
titlebar_bg_nor.png 289B
home_btn_bg_d.png 5KB
icon_more.png 1KB
home_btn_bg_n.png 592B
tab_divider.png 87B
icon_meassage.png 1KB
icon_home.png 1KB
home_btn_bg_s.png 4KB
toolbar_refresh_icon.png 2KB
icon_square.png 965B
ic_launcher.png 4KB
classes.dex 12KB
Api.apk 48KB
resources.ap_ 40KB
.classpath 356B
assets
project.properties 382B
.DS_Store 12KB
.project 806B
gen
com
api
R.java 3KB
共 81 条
- 1
资源评论
- inclick2014-02-08可以运行不错
okm1989
- 粉丝: 16
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功