簡體   English   中英

在Android 4.0+上消失的ActionBar

[英]ActionBarDisappearing on Android 4.0+

我目前正在為2.3-4.2+上的設備編寫應用程序,並且遇到了一些奇怪的意外問題。 在嘗試為其設定主題之前,它一直運行良好,直到在所有設備上顯示為止。 即使使用簡單的樣式簡單地擴展了動作欄夏洛克主題,也似乎沒有顯示動作欄。

樣式的設置。

<style name="FrameworkRoot.Theme" parent="Theme.Sherlock.Light.DarkActionBar">
    <!-- API 11+ (compatibility) -->
    <item name="buttonBarStyle">@style/Compat.ButtonBar</item>
    <item name="buttonBarButtonStyle">@style/Compat.ButtonBarButton</item>
    <item name="indeterminateProgressStyle">@style/Compat.IndeterminateProgress</item>
    <!-- API 14+ (compatibility) -->
    <item name="listPreferredItemPaddingLeft">@dimen/compat_list_preferred_item_padding_left</item>
    <item name="listPreferredItemPaddingRight">@dimen/compat_list_preferred_item_padding_right</item>
    <item name="listPreferredItemHeightSmall">@dimen/compat_list_preferred_item_height_small</item>
</style>

<style name="Theme.Base" parent="FrameworkRoot.Theme">
    <item name="textHeaderMaxLines">@integer/text_header_max_lines</item>
    <item name="trackAbstractMaxLines">@integer/track_abstract_max_lines</item>
    <item name="activatableItemBackground">@drawable/activatable_item_background</item>
</style>    

<!-- Base themes for the app -->
<style name="Theme.TestApp" parent="Theme.Base">
    <item name="actionBarStyle">@style/Widget.TestApp.ActionBar</item>
    <item name="android:actionBarStyle">@style/Widget.TestApp.ActionBar</item>
</style>

<!-- Base Action Bar Style -->
<style name="Widget.TestApp.ActionBar" parent="Theme.Sherlock.Light.DarkActionBar">

</style>

如果我刪除:

<item name="android:actionBarStyle">@style/Widget.TestApp.ActionBar</item>

為了使動作欄本身不會在3.0+中設置樣式,我無法設置樣式。

進行此設置的最佳方法是什么? AndroidManifest.xml將應用程序的樣式指向“ Theme.TestApp”。

我的最終目標是在操作欄上具有自定義背景,以及自定義選項卡選擇器的顏色和字體。 最好的方法是什么,因為我目前的方法效果不佳。

您必須為ActionBarSherlock 本機ActionBar設置屬性。 因此,例如,替換為:

<style name="Theme.Base" parent="FrameworkRoot.Theme">
    <item name="textHeaderMaxLines">@integer/text_header_max_lines</item>
    <item name="trackAbstractMaxLines">@integer/track_abstract_max_lines</item>
    <item name="activatableItemBackground">@drawable/activatable_item_background</item>
</style>    

有了這個:

<style name="Theme.Base" parent="FrameworkRoot.Theme">

    <item name="textHeaderMaxLines">@integer/text_header_max_lines</item>
    <item name="trackAbstractMaxLines">@integer/track_abstract_max_lines</item>
    <item name="activatableItemBackground">@drawable/activatable_item_background</item>

    <item name="android:textHeaderMaxLines">@integer/text_header_max_lines</item>
    <item name="android:trackAbstractMaxLines">@integer/track_abstract_max_lines</item>
    <item name="android:activatableItemBackground">@drawable/activatable_item_background</item>

</style>    

帶有“ android”前綴的屬性指向本機ActionBar的內部資源,前面沒有“ android”的屬性指向ActionBarSherlock的資源。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM