1

我以这个简单的布局为例:

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <HorizontalScrollView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:fillViewport="true"
            android:scrollbars="none" >

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_gravity="center" />
        </HorizontalScrollView>

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >
        </FrameLayout>
    </LinearLayout>

</TabHost>

在代码中添加 8 个选项卡后,我可以看到它们被挤在一起。如何向选项卡添加可滚动功能?(只是标签,而不是内容)

我手机上的一个应用程序具有此功能,并且无需任何滚动条即可完成。基本上,要移动我只需按下并按住,然后将选项卡向左拖动以显示更多选项卡。如何做到这一点?

4

3 回答 3

0

你试过这个吗?

<HorizontalScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TabHost
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    </TabHost>

</HorizontalScrollView>
于 2012-06-04T12:16:08.597 回答
0

请为您的 TabWidget 试试这个:

  <HorizontalScrollView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    android:scrollbars="none"
    android:layout_alignParentBottom="true">
    <TabWidget
      android:id="@android:id/tabs"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:layout_gravity="center"/>
  </HorizontalScrollView>
于 2012-06-04T12:25:03.790 回答
0

您可以尝试设置每个选项卡的最小宽度,如下所示:

    for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        tabHost.getTabWidget().getChildAt(i).setMinimumWidth(200);
    }
于 2012-10-09T09:49:25.133 回答