如何在安卓中创建多个没有xml的选项卡



我找到了很多在 android 中使用 xml 文件创建选项卡的示例,但我需要以编程方式创建多个选项卡。请指导我。

<TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <TextView
            android:tag="tab0"
            android:text="Tab 1"
            android:background="@android:drawable/btn_star_big_on"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            />
        <TextView
            android:tag="tab1"
            android:text="Tab 2"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            />
        <TextView
            android:tag="tab2"
            android:text="Tab 3"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            />
    </TabWidget>

我如何以编程方式编写它而不是上面的 xml 代码。

使用滑动检查选项卡示例。它具有没有 xml 文件的选项卡的实现。

但是每个片段都有 XML 布局。您可以根据需要删除它。

在 TabActivity 中:

private void addTab(String labelId, int drawableId, Class<?> c)
{
  Intent intent=new Intent(this, c);
  TabHost.TabSpec spec=Your_TabHost.newTabSpec("tab"+labelId);
  View tabIndicator=LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
  TextView title=(TextView)tabIndicator.findViewById(R.id.title);
  title.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 12);
  title.setText(labelId);
  ImageView icon=(ImageView)tabIndicator.findViewById(R.id.icon);
  icon.setImageResource(drawableId);
  spec.setIndicator(tabIndicator);
  spec.setContent(intent);
  Your_TabHost.addTab(spec);
}

通过以下方式添加选项卡(仍在选项卡活动中):

addTab("Your tab title", R.drawable.your_tab_icon, SomeActivity.class);

但我仍然强烈建议您在低于 4.0 的 android 中使用 ActionBarSherlock,因为 Tab 已被弃用......

相关内容

  • 没有找到相关文章

最新更新