android - 分隔符不适用于带有 viewpagerindicator 和 actionbarsherlock 的 TitlePageIndicator

标签 android actionbarsherlock android-viewpager viewpagerindicator

我注意到最新版本的 ViewPagerIndicator 支持 ICS 样式的分隔线,我尝试关注问题和解决方案,但无论我做什么,我都无法让分隔线显示在操作栏上的选项中标题页指示器。我添加了 IcsLayout 作为容器,放置了 divider、showDividers 和其他属性,但仍然一无所获。这是我的布局(奇怪的是,如果我将 IcsLayout 切换到 viewpager 指示器,应用程序会崩溃):

<com.actionbarsherlock.internal.widget.IcsLinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res/com.sosick.android.brink"
    android:layout_width="match_parent"
    android:divider="#ffffff"
    android:showDividers="middle"
    android:dividerPadding="8dp"
    android:dividerHeight="10dp"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <com.viewpagerindicator.TitlePageIndicator
        android:id="@+id/tpi_header"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        textColor="@color/text_light"
        android:background="@drawable/ab_stacked_solid_brink"
        app:topPadding="10dp"
        app:footerPadding="15dp"
        app:footerColor="#a4ded7"
        app:footerIndicatorHeight="2dp"
        app:footerIndicatorStyle="underline"
        app:footerLineHeight="2dp"
        app:selectedBold="false" />

    <android.support.v4.view.ViewPager
        android:id="@+id/vp_pages"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

</com.actionbarsherlock.internal.widget.IcsLinearLayout>

最佳答案

您需要在样式中声明分隔符参数,而不是在布局 xml 中。

../res/values/styles.xml:

<style name="StyledIndicators" parent="@android:style/Theme.Light">
    <item name="vpiIconPageIndicatorStyle">@style/CustomIconIndicator</item>
</style>

<style name="CustomIconIndicator" parent="Widget.TabPageIndicator">
    <item name="android:divider">@drawable/custom_tab_indicator_divider</item>
    <item name="android:showDividers">middle</item>
    <item name="android:dividerPadding">10dp</item>
</style>

在您的 Activity list 中:

<activity
        android:name=".SampleIconsDefault"
        android:label="Icons/Default"
        android:theme="@style/StyledIndicators"> 
</activity>

关于android - 分隔符不适用于带有 viewpagerindicator 和 actionbarsherlock 的 TitlePageIndicator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14965113/

相关文章:

java - 安装最新SDK后ADB报错

android-layout - 像 Google Play 上的图片库? (查看下一张图片)

android - 为什么不保留所有 TextView 及其状态?

Android修复图片大小

android - 将相机中的图像文件压缩到一定大小

android - libGDX 中缓慢的模型批量渲染

android - 操作栏图标叠加

android - 如何摆脱 Android 上操作栏底部的边框

android - ActionBarSherlock 和自定义 TextBox(扩展 AutoCompleteTextView)

java - 一旦按下手机的后退按钮,ViewPager 不会生成 UI