WEB开发网
开发学院手机开发Android 开发 Android UI学习 - Tab的学习和使用 阅读

Android UI学习 - Tab的学习和使用

 2010-05-18 16:38:00 来源:WEB开发网   
核心提示:indicator, content, and a tag that is used to keep track of it.”,TabHost.TabSpec就是管理这3个东西:public String getTag ()public TabHost.TabSpec setContentpublic TabHost
indicator, content, and a tag that is used to keep track of it.”,TabHost.TabSpec就是管理这3个东西:

public String getTag ()

public TabHost.TabSpec setContent

public TabHost.TabSpec setIndicator

我理解这里的Indicator就是Tab上的label,它可以

设置label: setIndicator (CharSequence label)

或者同时设置label和icon:setIndicator (CharSequence label, Drawable icon)

或者直接指定某个view: setIndicator (View view)

对于Content,就是Tab里面的内容,可以

设置View的id: setContent(int viewId)

或者TabHost.TabContentFactory的createTabContent(String tag)来处理:setContent(TabHost.TabContentFactory contentFactory)

或者用new Intent来引入其他Activity的内容:setContent(Intent intent)

现在来看官方的Views/Tabs/Content By Id例子:

TabHost

代码

public class Tabs1 extends TabActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TabHost tabHost = getTabHost(); LayoutInflater.from(this).inflate(R.layout.tabs1, tabHost.getTabContentView(), true); tabHost.addTab(tabHost.newTabSpec("tab1") .setIndicator("tab1") .setContent(R.id.view1)); tabHost.addTab(tabHost.newTabSpec("tab3") .setIndicator("tab2") .setContent(R.id.view2)); tabHost.addTab(tabHost.newTabSpec("tab3") .setIndicator("tab3") .setContent(R.id.view3)); } }

原来在获取TabHost后,需要用LayoutInflater来得到Layout,LayoutInflater在后面就详细介绍。 R.layout.tabs1的内容:

< FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > < TextView android:id="@+id/view1" android:background="@drawable/blue" android:layout_width="fill_parent" android:layout_height="fill_parent"

上一页  1 2 3 4  下一页

Tags:Android UI 学习

编辑录入:coldstar [复制链接] [打 印]
赞助商链接