在不使用布局的情况下创建选项卡式UI

时间:2010-06-24 23:21:08

标签: android layout tabs android-tabhost

根据creating tab UI的android开发人员文档,你需要有一个TabHost和TabWidget,TabHost必须是布局的根节点。

一切都很完美,我试过这个例子,一切都很好。

在查看选项卡的API示例时,我遇到了tabs1.java(http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/Tabs1.html),它没有使用布局中的任何标签元素。

以下是创建标签的示例工作代码,根本不使用任何布局。

public class HelloAndroid extends TabActivity implements TabHost.TabContentFactory  {

  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    TabHost tabHost = getTabHost();
    tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("tab1").setContent(this));
  }

  public View createTabContent(String tag) {
    TextView text = new TextView(this);
    text.setText("tab1");
    return text;
  }
}

任何人都可以解释这是如何工作的吗?以及如何使用基于布局的方法,如教程中所述。

感谢。

1 个答案:

答案 0 :(得分:0)

这是因为TabActivity以编程方式创建了TabHost布局。

您可以查看http://www.google.com/codesearch/p?hl=en#uX1GffpyOZk/core/java/android/app/TabActivity.java&q=TabActivity&sa=N&cd=1&ct=rc