77范文网 - 专业文章范例文档资料分享平台

Android TabHost用法(2)

来源:网络收集 时间:2019-01-07 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

private TabHost tabHost = null;

@Override

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);// 去掉标题栏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.index);

tabHost = getTabHost();

for (int i = 0; i < tabMenu.length; i++) { intents[i] = new Intent();

intents[i].setClass(this, IndexContentActivity.class);

tabSpecs[i] = tabHost.newTabSpec(tabMenu[i]); tabSpecs[i].setIndicator(tabMenu[i]);// 设置文字 tabSpecs[i].setContent(intents[i]);// 设置该页的内容

tabHost.addTab(tabSpecs[i]);// 将该页的内容添加到Tabhost }

tabHost.setCurrentTabByTag(tabMenu[0]); // 设置第一次打开时默认显示的标签,

updateTab(tabHost);//初始化Tab的颜色,和字体的颜色

tabHost.setOnTabChangedListener(new OnTabChangedListener()); // 选择监听器 }

class OnTabChangedListener implements OnTabChangeListener {

@Override

public void onTabChanged(String tabId) { tabHost.setCurrentTabByTag(tabId); System.out.println(\

System.out.println(\ updateTab(tabHost); } }

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { System.exit(0); return false;

} else if (keyCode == KeyEvent.KEYCODE_MENU && event.getRepeatCount() == 0) {

return true; // 返回true就不会弹出默认的setting菜单 }

return false; } /**

* 更新Tab标签的颜色,和字体的颜色 * @param tabHost */

private void updateTab(final TabHost tabHost) {

for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) { View view = tabHost.getTabWidget().getChildAt(i); TextView tv = (TextView) tabHost.getTabWidget().getChildAt(i).findViewById(android.R.id.title); tv.setTextSize(16);

tv.setTypeface(Typeface.SERIF, 2); // 设置字体和风格 if (tabHost.getCurrentTab() == i) {//选中

view.setBackgroundDrawable(getResources().getDrawable(R.drawable.category_current));//选中后的背景

tv.setTextColor(this.getResources().getColorStateList( android.R.color.black)); } else {//不选中

view.setBackgroundDrawable(getResources().getDrawable(R.drawable.category_bg));//非选择的背景

tv.setTextColor(this.getResources().getColorStateList( android.R.color.white)); } } } }

自定义TabHost,TabWidget样式 . 分类: Android 2012-04-12 14:48 29018人阅读 评论(28) 收藏 举报

androidlayouttabsencodingnullbutton 大家好,今天我为大家分享TabHost中怎样修改TabWidget样式。在很多界面美观的应用中很多都用到了TabHost,但他们要比系统默认的要漂亮得多。先看几张图: 京东商城底部菜单栏 新浪微博底部菜单栏 好了,看到这些漂亮的菜单栏是不是很惊讶,你可能会说用Button就可以实现啊 ,可是用Button的话控制显示的内容很麻烦,不如用TabHost控制效率更高。很想知道用TabHost是怎么实现的吧,下面就来研究如何实现这种漂亮的TabHost。先看一下效果图: 界面比较简单,要想做得漂亮换几张图片就可以了。 第一步:先在布局(这里用了main.xml创建时自动生成的)里面放上TabHost ,只要将TabHost控件托至屏幕中就可: [html] view plaincopyprint? 1. 2.

3. android:layout_width=\ 4. android:layout_height=\

5. xmlns:android=\> 6.

10.

13.

ht=\ android:id=\>

14.

ight=\ android:id=\>

15.

ight=\ android:id=\>

16.

ight=\ android:id=\> 17. 18. 19.

这里我们已经把LinearLayout和TextView去掉了,并将“xmlns:android=\添加大TabHost里了,这里要注意我们将TabHost的id定义为自己定义的id比不用android规定的id=\。

第二步:创建显示此TabWidget的布局tabmini.xml: [html] view plaincopyprint?

1.

2.

3. android:layout_width=\ 4. android:layout_height=\

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Android TabHost用法(2)在线全文阅读。

Android TabHost用法(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/411683.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: