如何在Android中删除选项卡小部件的间距?

时间:2013-02-21 05:01:24

标签: android android-layout android-widget

enter image description here

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

6 个答案:

答案 0 :(得分:7)

我解决了这个问题,

tabHost.getTabWidget().setDividerDrawable(null);

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

if (Integer.parseInt(Build.VERSION.SDK) >= Build.VERSION_CODES.HONEYCOMB) {
    tabHost.getTabWidget().setShowDividers(LinearLayout.SHOW_DIVIDER_NONE);
}

答案 1 :(得分:4)

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

for (int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
        tabHost.getTabWidget().getChildAt(i).setPadding(0, 0, 0, 0);
    }

答案 2 :(得分: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>

答案 3 :(得分: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>

答案 4 :(得分:2)

我假设您正在使用自定义视图选项卡。要删除两个选项卡之间的空间,您不应设置视图的左边距和右边距,或者您可以设置边距属性来设置上边距,左边距,下边距和右边距。

如果问题是标签内的间距,则不要在视图中应用填充。 如果您的问题尚未解决,请发布您的代码。

答案 5 :(得分:2)

尝试使用以下内容:

tabHost.getTabWidget().setStripEnabled(false);

有关详细说明,请参阅this链接

或者做 你的XML中的android:tabStripEnabled =“false”