Android学习之TabWidget .

 今天和大家分享的是Android中的选项卡。

要使用选项卡就先了解两个类:

TabHost: 它可以由TabActivity类的getTabHost获得。

TabSpec: 代表选项卡每个Tab的TabSpec,它可以由TabHost.newTabSpec(string tag)获得。

 

最后通过TabHost的AddTab(TabSpec)方法就可以添加Tab到选项卡上。

 

看代码:

 

import android.app.TabActivity; import android.content.Intent; import android.os.Bundle; import android.widget.TabHost; import android.widget.TabHost.TabSpec; public class TabView extends TabActivity { private TabHost tabHost; private TabSpec tabSpec; private Intent intent; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findView(); } private void findView() { tabHost = this.getTabHost(); //增加第一个tab tabSpec = tabHost.newTabSpec("tab1"); //显示的字符 tabSpec.setIndicator("tab1"); //添加tab里面的内容,也可以是Activity如第二个tab tabSpec.setContent(R.id.tab1); //添加在tab tabHost.addTab(tabSpec); intent = new Intent(TabView.this,Tab.class); //增加第二个tab tabSpec = tabHost.newTabSpec("tab2"); tabSpec.setIndicator("tab2"); //添加Activity到tab中 tabSpec.setContent(intent); tabHost.addTab(tabSpec); } }

 

xml文件里的格式一定要注意了:

这是必须的内容

<?xml version="1.0" encoding="utf-8"?> <TabHost android:id="@android:id/tabhost" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TabWidget android:id="@android:id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content"> </TabWidget> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- tab1里的内容 --> <LinearLayout android:id="@+id/tab1" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <EditText android:id="@+id/edittext1" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="我是第一个Tab里的"> </EditText> <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="我是也第一个Tab里的"> </Button> </LinearLayout> </FrameLayout> </LinearLayout> </TabHost>

 

在tab2中我增加的内容是一个显示文本框的Activity:

import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class Tab extends Activity { public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("我在tab2里"); this.setContentView(textView); } }

 

 

看下效果图:

Android学习之TabWidget ._第1张图片

 

总结:

这只是一个简单的实现,大家还可以多增加自己想要的功能!自己写了程序之后对它的理解一定会更深的!

你可能感兴趣的:(Android学习之TabWidget .)