【发布时间】:2012-03-16 12:19:01
【问题描述】:
我正在尝试使用 SherlockActionBar 实现 ViewPagerIndicator。有效:我可以滑动片段,但样式不起作用!
看起来像这样:
相关话题:https://github.com/JakeWharton/Android-ViewPagerIndicator/issues/66
我知道出了什么问题: 在VPI的示例中,页面的样式是通过(例如)在AndroidManifest.xml中设置的
<activity
android:name=".SampleTabsDefault"
android:theme="@style/Theme.PageIndicatorDefaults">
</activity>
但是当我将该 android:theme 元素添加到我自己的 Manifest.xml 时,我得到以下异常:
03-16 11:06:24.400: E/AndroidRuntime(483): Caused by: java.lang.IllegalStateException: You must use Theme.Sherlock, Theme.Sherlock.Light, Theme.Sherlock.Light.DarkActionBar, or a derivative.
我也尝试将所有样式信息复制到styles.xml,但这也不起作用。
您能告诉我如何为 VPI 设置样式吗? 谢谢!
编辑: 现在我已经添加了
<activity
android:name=".SampleTabsDefault"
android:theme="@style/StyledIndicators">
</activity>
到我的 Manifest.xml
以及styles.xml中的以下样式
<style name="Theme.BataApp" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>
<style name="StyledIndicators" parent="Theme.BataApp">
<item name="vpiTitlePageIndicatorStyle">@style/Widget.TitlePageIndicator</item>
<item name="vpiTabPageIndicatorStyle">@style/Widget.TabPageIndicator</item>
<item name="vpiTabTextStyle">@style/Widget.TabPageIndicator.Text</item>
</style>
结果:我没有得到任何异常,查看样式,但我现在看不到任何片段:(
活动代码可以在这里找到:http://pastebin.com/hsNgxFDZ 带有样式的当前页面截图:
【问题讨论】:
标签: android android-viewpager actionbarsherlock android-theme