TabWidgets之间的分隔线

mbe*_*dev 4 layout tabs android tabwidget divider

TabWidget下的android:divider属性是否有效?我试过android的Tab Layout教程只是为了测试(http://developer.android.com/resources/tutorials/views/hello-tabwidget.html)并将android:divider设置为某个图像(现在我用的是android垂直滚动条作为drawable真正强调它是否被拾取(从框架中复制),但是当我在模拟器上运行它时,它似乎没有工作.根据文档,TabWidget似乎支持这个attribute:"Drawable用于在制表符之间绘制分隔符."

有人可以帮忙吗?我正在使用九补丁的drawable作为我的分隔图像drawable.

MB

Jos*_*emm 19

看起来该divider属性不再可用了TabWidget.添加自定义分隔符的一种方法是以编程方式设置它:

mTabHost.getTabWidget().setDividerDrawable(R.drawable.divider_vertical_dark);
Run Code Online (Sandbox Code Playgroud)

但请确保设置选项卡的内容之前调用此方法.如果我之后打电话,它会崩溃.

  • 你的行"你在设置标签的内容之前调用它"是令人兴奋的.解决了我的问题:) (2认同)

Dan*_*odi 7

我在ICS中遇到了问题,分区是可见的.除以下情况外,所有解决方案均无效.

<TabWidget
            android:id="@android:id/tabs"
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:gravity="bottom"
            android:layout_alignParentBottom="true"
            android:fadingEdge="none"
            android:showDividers="none" >
        </TabWidget>
Run Code Online (Sandbox Code Playgroud)

关键是 android:showDividers="none"


小智 7

我遇到了这个问题并使用以下代码解决了这个问题

tabHost1.getTabWidget().setDividerDrawable(R.drawable.example1);
if(Build.VERSION.SDK_INT >= 11)
    tabHost1.getTabWidget().setShowDividers(TabWidget.SHOW_DIVIDER_MIDDLE);
Run Code Online (Sandbox Code Playgroud)

对于低于11的api级别,它适用于第一行.对于11和更高,我包括这个以使这工作.setShowDividers在api level 11的linearlayout中添加.希望这可以帮助某人