【问题标题】:ViewPagerIndicator doesn't show underline in TabViewPagerIndicator 在选项卡中不显示下划线
【发布时间】:2014-05-15 09:44:36
【问题描述】:

我想做一个简单的TabPagerIndicator,但是它没有显示下划线,我使用xml来改变样式。这是我的 xml 样式文件:

<!-- Application theme. -->
<style name="AppTheme" parent="@style/Theme.AppCompat.Light">
    <item name="vpiTitlePageIndicatorStyle">@style/CustomTitlePageIndicator</item>
    <item name="vpiUnderlinePageIndicatorStyle">@style/CustomUnderlinePageIndicator</item> 
    <item name="vpiTabPageIndicatorStyle">@style/CustomTabPageIndicator</item>
</style>

<style name="CustomTabPageIndicator" parent="Widget.TabPageIndicator">
    <item name="android:background">@color/fondo_activity</item>
    <item name="android:textAppearance">@style/CustomTabPageIndicator.Text</item>
    <item name="android:textColor">#FF555555</item>
    <item name="android:textSize">14sp</item>
    <item name="android:dividerPadding">10dp</item>
    <item name="showDividers">middle</item> 
    <item name="android:paddingLeft">8dp</item>
    <item name="android:paddingRight">8dp</item>
    <item name="android:fadingEdge">horizontal</item>
    <item name="android:fadingEdgeLength">8dp</item>
</style>

<style name="CustomTabPageIndicator.Text" parent="android:TextAppearance.Medium">
    <item name="android:typeface">monospace</item>
</style>

<style name="CustomUnderlinePageIndicator">
    <item name="selectedColor">#FFCC0000</item>
    <item name="android:background">#FFCCCCCC</item>
    <item name="fadeLength">1000</item>
    <item name="fadeDelay">1000</item>
</style>


<style name="CustomTitlePageIndicator">
    <item name="android:background">#18FF0000</item>
    <item name="footerColor">#FFAA2222</item>
    <item name="footerLineHeight">1dp</item>
    <item name="footerIndicatorHeight">3dp</item>
    <item name="footerIndicatorStyle">underline</item>
    <item name="android:textColor">#AA000000</item>
    <item name="selectedColor">#FF000000</item>
    <item name="selectedBold">true</item>
</style>

在这张图片中你可以看到它是如何显示的(顶部的红线是操作栏的一部分)

有谁知道错误在哪里,我该如何解决?

最好的。

【问题讨论】:

  • 这个下划线不是要从xml..它的代码改成java文件..
  • 向上 :(,谁能帮帮我?

标签: android tabs viewpagerindicator underline


【解决方案1】:

您可以使用背景属性设置下划线。将其设置为 XML 可绘制对象,该可绘制对象定义用于绘制不同状态的 drawables/9-patches。

<selector 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/vpi__tab_unselected_holo" />
    <item android:state_focused="false" android:state_selected="true"  android:state_pressed="false" android:drawable="@drawable/vpi__tab_selected_holo" />

    <!-- Focused states -->
    <item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/vpi__tab_unselected_focused_holo" />
    <item android:state_focused="true" android:state_selected="true"  android:state_pressed="false" android:drawable="@drawable/vpi__tab_selected_focused_holo" />

    <!-- Pressed -->
    <!--    Non focused states -->
    <item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/vpi__tab_unselected_pressed_holo" />
    <item android:state_focused="false" android:state_selected="true"  android:state_pressed="true" android:drawable="@drawable/vpi__tab_selected_pressed_holo" />

    <!--    Focused states -->
    <item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/vpi__tab_unselected_pressed_holo" />
    <item android:state_focused="true" android:state_selected="true"  android:state_pressed="true" android:drawable="@drawable/vpi__tab_selected_pressed_holo" />
</selector>

【讨论】:

    猜你喜欢
    • 2014-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-12
    • 1970-01-01
    • 2013-08-22
    • 1970-01-01
    相关资源
    最近更新 更多