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 スタイル付きの現在のページのスクリーンショット: