这是前段时间做的一个项目的一部分,我把它单独提取出来!效果如下图:

可以把选项卡放在一个Activity的任何位置,自定义了选项卡按钮的背景颜色!

basicview_tab.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:background="#852741"    >    <!-- 导入别的xml文件 --><includelayout="@layout/title_bar"/>    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"     android:id="@android:id/tabhost" android:layout_width="fill_parent"       android:layout_height="fill_parent">     <LinearLayout android:orientation="vertical"      android:layout_width="fill_parent" android:layout_height="fill_parent">          <TabWidget android:id="@android:id/tabs"        android:layout_width="fill_parent"         android:layout_height="wrap_content" />       <FrameLayout android:id="@android:id/tabcontent"        android:layout_width="fill_parent"         android:layout_height="wrap_content"        android:layout_weight="3" >                 </FrameLayout>                 </LinearLayout>  </TabHost>  </LinearLayout>

自定义选项卡按钮 TabButton

public class TabButton extends LinearLayout {public TabButton(Context c, int drawable, String text) {super(c);LayoutInflater inflater = LayoutInflater.from(c);View view = inflater.inflate(R.layout.tab_button_layout, null);addView(view);TextView tv = (TextView)     view.findViewById(R.id.tab_button_text);ImageView iv = (ImageView) view.findViewById(R.id.tab_button_img);iv.setImageResource(drawable);tv.setText(text);}}

布局 tab_button_layout.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="62dip"    android:background="@drawable/tab_selector_bg"    android:gravity="center"    >    <ImageView     android:layout_width="240dip"    android:layout_height="wrap_content"    android:id="@+id/tab_button_img"    android:layout_gravity="center_horizontal"    /><TextView      android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:id="@+id/tab_button_text"   android:layout_gravity="center"   android:textColor="#ffffff"    /></LinearLayout>

主界面代码 BasicViewTab

public class BasicViewTab extends TabActivity {private TabHost tabHost;private TextView textView;/* (non-Javadoc) * @see android.app.ActivityGroup#onCreate(android.os.Bundle) */@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.basicview_tab);Intent intent = new Intent(BasicViewTab.this,TabExpenses.class);intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);textView = (TextView)findViewById(R.id.tv_title_bar);textView.setText("Basic View Factor");tabHost = getTabHost(); tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator(new TabButton(this,R.drawable.tabbar_icon_basic_expenses_selector,"Expenses"))        .setContent(intent));tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator(new TabButton(this,R.drawable.tabbar_icon_basic_setting_selector,"Setting"))        .setContent(new Intent(this, TabSetting.class)));tabHost.setCurrentTab(0);ImageView backHome = (ImageView) findViewById(R.id.btn_back_home);backHome.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubBasicViewTab.this.finish();}});}}

附件里有完整代码!

更多相关文章

  1. Android之CheckBox(多选按钮)
  2. Android(安卓)view的移动和画布的移动原理 适用于制作各种效果
  3. import project后,出现Unable to get system library for the pro
  4. APK反破解之一:Android(安卓)Java混淆(ProGuard)
  5. Android的Fragment中onActivityResult不被调用的终极解决方案
  6. Android开发8:UI组件TextView,EditText,Button
  7. android 植入点乐广告方法
  8. Android(安卓)studio 中Activity以及EditText的一些用法和问题
  9. 我怎么能不使用GPS得到我的Android设备的国家代码?

随机推荐

  1. 【学习Android】Keyboard.class类源码注
  2. android用户界面之TabHost教程实例汇总
  3. android shape的使用
  4. 什么是Android------Android中文SDK
  5. COCOS2D-X编译成android的项目
  6. Android的NDK开发(5)————Android(安
  7. 极光推送获取不到RegisterId(注册ID)Andr
  8. Android(安卓)获取系统音量
  9. Android中 Error generating final archi
  10. Android(安卓)Launcher manifest解析