7

在此处输入图像描述

我想删除标签之间的间距,如何实现?

4

6 回答 6

7

我解决了这个问题,

tabHost.getTabWidget().setDividerDrawable(null);

如果您的构建目标是 Honeycomb 以上,您也可以使用以下代码。

if (Integer.parseInt(Build.VERSION.SDK) >= Build.VERSION_CODES.HONEYCOMB) {
    tabHost.getTabWidget().setShowDividers(LinearLayout.SHOW_DIVIDER_NONE);
}
于 2013-12-17T09:15:00.143 回答
4

在某些时候我有同样的问题,我的问题是通过将填充设置为“0”来解决的。我认为,默认情况下它会采用一些填充。因此,如果您不想在 TabWidget 之间留出空间,请尝试使用 Blow 代码。如果我的解决方案可以解决您的问题,请告诉我。

for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        tabHost.getTabWidget().getChildAt(i).setPadding(0, 0, 0, 0);
    }
于 2013-12-14T16:56:01.607 回答
3

在你的主要 res/values/theme.xml

<style name="Theme.Main" parent="...">
    ...
    <item name="android:actionBarTabBarStyle">@style/TabBar.Style</item>
    ...
</style>

在 res/values/style.xml

<style name="TabBar.Style" parent="...">
    ...
    <item name="android:showDividers">none</item>
    ...
</style>
于 2013-12-10T09:06:46.160 回答
3

试试这个。

    tabHost.getTabWidget().setDividerDrawable(R.drawable.empty);

并定义drawable empty.xml。

     <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="line" >
    <size
        android:width="0px"
        android:color="@android:color/black"
        android:dashWidth="0px"
        android:dashGap="0px" />
</shape>
于 2013-12-17T09:25:03.333 回答
2

我假设您正在为选项卡使用自定义视图。要删除两个选项卡之间的空间,您不应设置视图的左侧边距和右侧边距,或者您可能设置了设置顶部、左侧、底部和右侧边距的边距属性。

如果您的问题是选项卡内的间距,则不要将填充应用于您的视图。如果您的问题尚未解决,请发布您的代码。

于 2013-12-16T05:33:57.950 回答
2

尝试使用以下内容:

tabHost.getTabWidget().setStripEnabled(false);

有关更多解释,您可以参考链接

或在您的 XML 中执行 android:tabStripEnabled="false"

于 2013-12-18T06:03:35.577 回答