TabWidget 的大小 (Tabspec)

发布于 2024-10-12 17:44:37 字数 1373 浏览 6 评论 0原文

我是android新手,我想显示一个TabWidget,其Tabspec应该具有相同的大小...它们里面有什么并不重要...此外,我添加了一个Horizo​​ntallScrollView,因为我想在我的活动中显示 8 个选项卡,而不仅仅是 3 个...

有人知道我必须在 xml 中添加什么才能使我的 8 个活动具有相同的选项卡大小吗?

<?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:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp">
        <HorizontalScrollView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:scrollbarAlwaysDrawHorizontalTrack="true"
                android:scrollbars="horizontal"/>
        </HorizontalScrollView>
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp" />
    </LinearLayout>

</TabHost>

谢谢

I'm new in android and I want to display one TabWidget whose Tabspec should have the same size... it doesn't matter what they have inside... Besides, I have added one HorizontallScrollView because I want to display 8 tabs in my activity, not only 3...

Anybody knows what do I have to add to my xml to have my 8 activities with the same tab size?

<?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:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp">
        <HorizontalScrollView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:scrollbarAlwaysDrawHorizontalTrack="true"
                android:scrollbars="horizontal"/>
        </HorizontalScrollView>
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp" />
    </LinearLayout>

</TabHost>

Thank you

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我们只是彼此的过ke 2024-10-19 17:44:37

通常会创建如下所示的选项卡:

tabHost.addTab(tabHost.newTabSpec("tag")
                .setIndicator("tab title", icon))
                .setContent(this));

这会导致 TabHost 创建它选择托管 TabSpec 的视图。但是 setIndicator 存在重载,它采用 View 作为参数。
因此,您可以创建一个固定宽度的View,并为您的TabSpecs使用setIndicator的重载。

One usually creates a tab like this:

tabHost.addTab(tabHost.newTabSpec("tag")
                .setIndicator("tab title", icon))
                .setContent(this));

This results in the TabHost creating the view it chooses to host the TabSpec. But there is an overload of setIndicator, which takes a View as parameter.
So you can create a View of fixed width and use this overload of setIndicator for your TabSpecs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文