设置TabPageIndicator的样式

时间:2014-07-06 01:27:03

标签: android android-viewpager viewpagerindicator

我正在尝试用XML格式化TabPageIndicatior ViewPagerIndicator。到目前为止,我已达到based on an SO answer

<style name="Widget.MyTitlepageIndicator">
        <item name="android:background">@color/indicator_background_grey</item>
        <item name="footerColor">@color/indicator_footer_orange</item>
        <item name="footerIndicatorStyle">underline</item>
        <item name="footerIndicatorHeight">3dp</item>
        <item name="footerLineHeight">3dp</item>
        <item name="footerPadding">0dp</item>
        <item name="selectedColor">@color/indicator_footer_orange</
</style>  

然而,这并没有得到理想的结果。结果我正在寻找is this。我试图获得类似的页面指示器。

enter image description here

为了获得这种外观需要做出哪些改变?

1 个答案:

答案 0 :(得分:2)

使用此https://github.com/astuetz/PagerSlidingTabStrip 他们有自定义选项

定制

为了不仅仅看起来像另一个Play商店风格的应用,请去调整这些值以匹配 你的品牌:

  • pstsIndicatorColor滑动指示器的颜色
  • pstsUnderlineColor视图底部全宽线的颜色
  • pstsDividerColor标签之间的分隔线颜色
  • pstsIndicatorHeight滑动指示器的高度
  • pstsUnderlineHeight视图底部全宽线的高度
  • pstsDividerPadding分隔线的顶部和底部填充
  • pstsTabPaddingLeftRight每个标签的左右填充
  • pstsScrollOffset所选标签的滚动偏移量
  • pstsTabBackground每个标签的背景可绘制,应该是StateListDrawable
  • pstsShouldExpand如果设置为true,则每个标签的权重相同,默认为false
  • pstsTextAllCaps如果为true,则所有标签标题均为大写,默认为true

所有属性都有各自的getter和setter来在运行时更改它们

<com.astuetz.PagerSlidingTabStrip
        android:id="@+id/tabs"
        android:layout_width="match_parent"
        android:layout_height="62dip"
        android:layout_below="@+id/image"
        android:background="@drawable/background_tabs_diagonal"
        app:pstsDividerColor="#00000000"
        app:pstsIndicatorColor="#FF33B5E6"
        app:pstsTabPaddingLeftRight="14dip"
        app:pstsUnderlineColor="#FF33B5E6" />