为什么actionbar sherlock没有出现在2.1中?

时间:2012-04-17 15:58:39

标签: android actionbarsherlock android-actionbar

我将Sherlock库添加到我的项目中,并将所需的类和代码添加到我的项目中。当我测试它时,操作栏只出现在android 4模拟器中。当我在2.1模拟器中尝试时,Actionbar不会出现。你能给我一些建议如何解决它? 我为sherlock库和我的项目设置了目标15。

1 个答案:

答案 0 :(得分:1)

您需要完成以下操作:

适当地设置最小和目标SDK级别

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15" />

将您的Activity更改为SherlockActivity,将Fragment更改为SherlockFragment

将您的主题设置为您自己的主题之一,或者是直接主题Theme.Sherlock或其中一个子主题,例如Theme.Sherlock.Light

最后; ABS样式与原生操作栏的镜像相同,因此您需要两次定义每个样式元素。例如:

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
    <item name="background">@drawable/blue_gradient</item>
    <item name="android:background">@drawable/blue_gradient</item>

    <item name="displayOptions">useLogo|showHome</item>
    <item name="android:displayOptions">useLogo|showHome</item>

    <item name="icon">@drawable/actionbar_logo</item>
    <item name="android:icon">@drawable/actionbar_logo</item>       

    <item name="backgroundSplit">@drawable/bg_striped_split</item>
    <item name="android:backgroundSplit">@drawable/bg_striped_split</item>
</style>

编辑:我也开始使用视频教程:http://www.youtube.com/watch?v=4GJ6yY1lNNY