Android:添加可绘制的tabselector时,我得到了一个不需要的apx。我的标签上有5px填充

时间:2010-09-08 16:33:31

标签: java android tabwidget

好的,下面我的代码为我的标签添加自定义外观(效果很好),但我在我的可绘制图像周围得到一个边框(填充或某种裁剪)。我如何以及在何处解决此问题?

的活动:

 TabHost mTabHost = getTabHost();
 Drawable mySelector = getResources().getDrawable(R.drawable.tabselector);
 mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("TAB 1" , mySelector).setContent(R.id.textview1));

部分tabselecter XML:

<selector
    android:id="@+id/myselector"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- Non focused states -->
    <item
        android:state_focused="false"
        android:state_selected="false"
        android:state_pressed="false"
        android:drawable="@drawable/darklogo"/>
    <item
        android:state_focused="false"
        android:state_selected="true"
        android:state_pressed="false"
        android:drawable="@drawable/lightlogo" />

主XML:

<TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:padding="0px"
            android:layout_marginBottom ="-4px"
            android:clipToPadding="false" />

我不会发布截图...

1 个答案:

答案 0 :(得分:0)

如果我帮你,那实际上很容易。

您只需在variablePadding元素中将true属性设置为selector

这是它应该是什么样子。

<selector
android:id="@+id/myselector"
android:variablePadding="true"
xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states -->
<item
    android:state_focused="false"
    android:state_selected="false"
    android:state_pressed="false"
    android:drawable="@drawable/darklogo"/>
<item
    android:state_focused="false"
    android:state_selected="true"
    android:state_pressed="false"
    android:drawable="@drawable/lightlogo" />

注意第三行。