android之TabHost

首先建立文件res/layout/tab.xml

代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/MyLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <LinearLayout
        android:id="@+id/tab_edit"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical">
        <EditText
            android:id="@+id/edit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="请输入检索关键字..."
            android:textSize="18px"/>
        <Button
            android:id="@+id/but"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="搜索"/>
    </LinearLayout>
	<LinearLayout
	    android:id="@+id/tab_clock"
	    android:layout_width="fill_parent"
	    android:layout_height="fill_parent"
	    android:orientation="vertical">
	    <AnalogClock
	        android:id="@+id/myAnalogClock"
	        android:layout_width="wrap_content"
	        android:layout_height="wrap_content"/>
	</LinearLayout>
	<LinearLayout
	    android:id="@+id/tab_sex"
	    android:layout_width="fill_parent"
	    android:layout_height="fill_parent"
	    android:orientation="vertical">
	    <RadioGroup
	        android:id="@+id/sex"
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:orientation="vertical">
	        <RadioButton
	            android:id="@+id/male"
	            android:checked="true"
	            android:text="性别:男"/>
	        <RadioButton
	            android:id="@+id/female"
	            android:text="性别:女"/>
	    </RadioGroup>
	</LinearLayout>
</LinearLayout>

  然后对于Activity类进行改写

代码如下:

package com.example.myandroid;

import android.os.Bundle;
import android.app.Activity;
import android.app.TabActivity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;

@SuppressWarnings("deprecation")
public class MainActivity extends TabActivity{
	private TabHost myTabHost;
	private int[] layRes = {
			R.id.tab_edit,R.id.tab_clock,R.id.tab_sex
	};
	@Override
	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState);
		this.myTabHost = super.getTabHost();
		LayoutInflater.from(this)
						.inflate(R.layout.tab, this.myTabHost.getTabContentView(),true);
		for(int x = 0;x < this.layRes.length;x++){
			TabSpec myTab = myTabHost.newTabSpec("tab"+x);
			myTab.setIndicator("标签"+x);
			myTab.setContent(this.layRes[x]);
			this.myTabHost.addTab(myTab);
		}
	}
}
//public class MainActivity extends Activity {
//
//    @Override
//    public void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//        setContentView(R.layout.activity_main);
//    }
//
//    @Override
//    public boolean onCreateOptionsMenu(Menu menu) {
//        getMenuInflater().inflate(R.menu.activity_main, menu);
//        return true;
//    }
//}

  最后运行效果如图:

tab1:

tab2:

tab3:

时间: 2024-10-05 11:24:29

android之TabHost的相关文章

android:id=&quot;@android:id/tabhost&quot; 、android:id=&quot;@+id/llRoot&quot; 、android:id=&quot;@id/llRoot&quot; 之间的区别

由于快要放暑假了,所以最近这俩周把Android方面的知识复习一下,准备找个实习工作. 顺便把自己的总结更大家分享一下,共同进步,谢谢.... 一. android:id="@android:id/tabhost"   是调用系统内部的ID 和代码中 mTabContent = (FrameLayout) findViewById(com.android.internal.R.id.tabcontent); 是一回事. 二. android:id="@+id/llRoot&q

Android的TabHost组件-android的学习之旅(四十)

TabHost简介 虽然,官方建议用Fagment取代TabHost,但是我们还是大概的介绍一下.TabHost是一种非常简单的组件,TabHost可以很方便的在窗口放置多个标签页,每一个标签页相当于获得了一个摆放位置. 注意 TabHost的内部需要两个组件一个是TabWidget和FrameLayout两个组件. 通话记录界面 <?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:andro

Android学习——TabHost的使用二

仿QQ底端导航栏 废话不多说,直接上代码 <?xml version="1.0" encoding="UTF-8"?> <!-- Tab导航 最新版 --> <TabHost xmlns:android="http://schemas.android.com/apk/res/android"     android:id="@android:id/tabhost"     android:layo

12.Android之Tabhost组件学习

TabHost是整个Tab的容器,TabHost的实现有两种方式: 第一种继承TabActivity,从TabActivity中用getTabHost()方法获取TabHost.各个Tab中的内容在布局文件中定义就行了. 第二种方式,不继承TabActivity,在布局文件中定义TabHost即可,但是TabWidget的id必须是@android:id/tabs,FrameLayout的id必须是@android:id/tabcontent. 1)继承TabActivity 如果加载该TabH

android学习--TabHost选项卡组件

TabHost是一种非常实用的组件,TabHost可以很方便地在窗口上放置多个标签页,每个标签页获得了一个与外部容器相同大小的组件摆放区域.在手机系统的应用类似"未接电话"."已接电话"."呼出电话"等. 1 . TabHost提供了两个方法来创建选项卡.添加选项卡 newTabSpec(String tag)  : 创建选项卡 addTab(TabHost.TabSpec  tabSpec) : 添加选项卡 2.TabHost 切换选项卡触发的

Android ViewPager+TabHost实现首页导航

今天发的是TabHost结合ViewPager实现首页底部导航的效果,虽然说网上有很多这样的Demo,不过呢,我还是要把自己练习写的发出来,没错!就是这么任性: 先上效果图,如下: 代码里面有注释,就不过多解释了,说几点需要注意的问题 1:TabHost .TabWidget.FrameLayout一定添加id这个属性,否则会报错 android:id="@android:id/tabhost" android:id="@android:id/tabcontent"

Android之TabHost组件美化

先看效果图: 1.main.xml文件代码: <?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/tabhost" android:layout_width="fill_parent"

Android底部TabHost API

今天在项目中遇到了底部TabHost,顺便就写了一个底部TabHost的api继承即可使用非常简单,以下为源代码: 首先是自定义的TabHostActivity,如果要使用该TabHost继承该类即可 1 package com.api; 2 3 import android.app.TabActivity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.view.LayoutInfla

android自定义tabhost,tabcontent用intent获得

地址:http://my.oschina.net/aowu/blog/36282 自己改的自定义tabhost组建,效果图如左.有更好的朋友可以相互交流一下,嘿嘿. 1.先上AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"