Tab选项卡是一个非常方便的组件
今天查询资料知道了android 选项卡的一种简单实现.
本篇文章来源于好岸园it技术学习网 (http://www.hopean.com)
原文链接:http://www.hopean.com/devlop/
下面是简单的步骤.
1.在布局文件中使用FrameLayout列出Tab组件以及Tab中的内容组件
2.Activity要继承TabActivity
3.调用TabActivity的getTabHost( )方法来获得TabHost对象
4.通过TabHost创建Tab选项
创建工程后首先,
修改strings.xml文件
[html]
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AndroidTabSelector</string>
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>
<string name="test1">测试界面1</string>
<string name="test2">测试界面2</string>
<string name="test3">测试界面3</string>
</resources>
之后修改main.xml文件,详细代码如下:
[html]
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/FrameLayout01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TabHost
android:id="@+id/TabHost01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/test1" />
<TextView
android:id="@+id/TextView02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/test2" />
<TextView
android:id="@+id/TextView03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/test3" />
</FrameLayout>
之后修改MainActivity.java文件,java代码如下:
[java]
package com.example.androidtabselector;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.app.TabActivity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.widget.TabHost;
public class MainActivity extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
TabHost tah = getTabHost();
// from(this)从TabActivity获取LayoutInflater
// R.layout.main 存放Tab布局
// 通过TabHost获得存放Tab标签页内容的FrameLayout
// 是否将inflate 加到根布局元素上
LayoutInflater.from(this).inflate(R.layout.activity_main,
tah.getTabContentView(), true);
//设置Tab标签的内容和显示内容
tah.addTab(tah.newTabSpec("tab1").setIndicator("选项1").setContent(R.id.TextView01));
tah.addTab(tah.newTabSpec("tab2").setIndicator("选项2").setContent(R.id.TextView02));
tah.addTab(tah.newTabSpec("tab3").setIndicator("选项3").setContent(R.id.TextView03));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
至此就可以实现简单的android 选项卡效果