安卓精美底部导航栏的实现TabHost
2014-05-01 10:53
471 查看
先看效果图:
先来看布局文件:maintabs.xml
主要的实现文件:MainTabActivity.java
项目中附带很多资源文件,否则效果无法显示出来,在这里附上源码下载地址:
http://download.csdn.net/detail/u012784277/7279099
先来看布局文件:maintabs.xml
<?xml version="1.0" encoding="UTF-8"?>
主要的实现文件:MainTabActivity.java
package com.andyidea.tabdemo; import android.app.TabActivity; import android.content.Intent; import android.os.Bundle; import android.view.Window; import android.widget.CompoundButton; import android.widget.RadioButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.TabHost; public class MainTabActivity extends TabActivity implements OnCheckedChangeListener{ private TabHost mTabHost; private Intent mAIntent; private Intent mBIntent; private Intent mCIntent; private Intent mDIntent; private Intent mEIntent; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.maintabs); this.mAIntent = new Intent(this,AActivity.class); this.mBIntent = new Intent(this,BActivity.class); this.mCIntent = new Intent(this,CActivity.class); this.mDIntent = new Intent(this,DActivity.class); this.mEIntent = new Intent(this,EActivity.class); ((RadioButton) findViewById(R.id.radio_button0)) .setOnCheckedChangeListener(this); ((RadioButton) findViewById(R.id.radio_button1)) .setOnCheckedChangeListener(this); ((RadioButton) findViewById(R.id.radio_button2)) .setOnCheckedChangeListener(this); ((RadioButton) findViewById(R.id.radio_button3)) .setOnCheckedChangeListener(this); ((RadioButton) findViewById(R.id.radio_button4)) .setOnCheckedChangeListener(this); setupIntent(); } @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked){ switch (buttonView.getId()) { case R.id.radio_button0: this.mTabHost.setCurrentTabByTag("A_TAB"); break; case R.id.radio_button1: this.mTabHost.setCurrentTabByTag("B_TAB"); break; case R.id.radio_button2: this.mTabHost.setCurrentTabByTag("C_TAB"); break; case R.id.radio_button3: this.mTabHost.setCurrentTabByTag("D_TAB"); break; case R.id.radio_button4: this.mTabHost.setCurrentTabByTag("MORE_TAB"); break; } } } private void setupIntent() { this.mTabHost = getTabHost(); TabHost localTabHost = this.mTabHost; localTabHost.addTab(buildTabSpec("A_TAB", R.string.main_home, R.drawable.icon_1_n, this.mAIntent)); localTabHost.addTab(buildTabSpec("B_TAB", R.string.main_news, R.drawable.icon_2_n, this.mBIntent)); localTabHost.addTab(buildTabSpec("C_TAB", R.string.main_manage_date, R.drawable.icon_3_n, this.mCIntent)); localTabHost.addTab(buildTabSpec("D_TAB", R.string.main_friends, R.drawable.icon_4_n, this.mDIntent)); localTabHost.addTab(buildTabSpec("MORE_TAB", R.string.more, R.drawable.icon_5_n, this.mEIntent)); } private TabHost.TabSpec buildTabSpec(String tag, int resLabel, int resIcon, final Intent content) { return this.mTabHost.newTabSpec(tag).setIndicator(getString(resLabel), getResources().getDrawable(resIcon)).setContent(content); } }
项目中附带很多资源文件,否则效果无法显示出来,在这里附上源码下载地址:
http://download.csdn.net/detail/u012784277/7279099
相关文章推荐
- 安卓开发复习笔记——Fragment+FragmentTabHost组件(实现新浪微博底部菜单)
- 【安卓】安卓App开发思路 一步一个脚印(二)FragmentTabHost实现底部的菜单
- 安卓 实现一个底部导航栏(新手笔记-2)
- 【Android基础篇】TabHost实现底部导航栏
- Android博客挑错系列之一FragmentTabHost和ViewPager实现底部导航栏
- 安卓开发笔记——Fragment+FragmentTabHost组件(实现新浪微博底部菜单)
- FragmentTabHost FrameLayout实现底部导航栏
- 安卓用Fragment+RadioButton组合构成的底部导航栏的实现
- FragmentTabhost实现底部导航栏
- 底部导航栏实现页面的切换(五):TabHost
- 安卓APP底部导航栏(有消息圆点指示器),实现fragment切换(eclipse)
- 安卓从零开发之购物商城(一)--底部菜单栏的的实现(FragmentTabHost)
- 安卓微信底部导航栏的实现
- TabHost详解:实现底部导航栏
- FragmentTabHost+FrameLayout实现底部导航栏
- 安卓开发笔记——TabHost组件(二)(实现底部菜单导航)
- FragmentTabhost和Fragment实现底部导航栏
- 安卓开发笔记——TabHost组件(一)(实现底部菜单导航)
- 安卓UI--底部导航栏--TabHost、TabActivity
- 安卓开发--应用市场的界面制作(一)--viewpager+fragment实现可滑动的底部导航栏