您的位置:首页 > 移动开发 > Android开发

android之实现底部TabHost

2014-07-29 21:20 281 查看
转:http://www.open-open.com/lib/view/open1330697955842.html

先说布局文件,如下:利用android:layout_alignParentBottom="true" 实现底部显示

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
android:background="@drawable/g"
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"
android:layout_alignParentBottom="true">
</TabWidget>
<FrameLayout android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout android:id="@+id/tabFirst"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<AnalogClock
android:id="@+id/widget31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true">
</AnalogClock>
</RelativeLayout>>
<RelativeLayout android:id="@+id/tabSecond"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<DigitalClock
android:layout_centerInParent="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</DigitalClock>
</RelativeLayout>
</FrameLayout>
</RelativeLayout>
</TabHost>


下面是主程序代码,注释写的比较详细,这里就不在多解释了

package com.cloay;

import android.app.TabActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.widget.TabHost;
import android.widget.TabHost.OnTabChangeListener;
import android.widget.Toast;

public class TabTestActivity extends TabActivity {
TabHost tabHost;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//获取TabHost对象
tabHost = getTabHost();
//        tabHost.setup();
//新建一个newTabSpec,设置标签和图标(setIndicator),设置内容(setContent)
tabHost.addTab(tabHost.newTabSpec("Test one").setIndicator("",getResources().getDrawable(android.R.drawable.ic_menu_call)).setContent(R.id.tabFirst));
tabHost.addTab(tabHost.newTabSpec("Test two").setIndicator("",getResources().getDrawable(android.R.drawable.ic_menu_camera)).setContent(R.id.tabSecond));
//设置TabHost的背景颜色
tabHost.setBackgroundColor(Color.argb(150,22,70,150));
//设置TabHost的背景图片资源
//        tabHost.setBackgroundResource(R.drawable.bg);
//设置当前现实哪一个标签
tabHost.setCurrentTab(0);   //0为标签ID
//标签切换处理,用setOnTabChangedListener
tabHost.setOnTabChangedListener(new OnTabChangeListener(){
public void onTabChanged(String tabId){
Toast.makeText(TabTestActivity.this, "This is a Test!", Toast.LENGTH_LONG).show();
}
});
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐