2012-05-22 48 views
3

我试图风格的动作条,下面的这篇博客文章:Android - 缺少父主题?

http://android-developers.blogspot.com/2011/04/customizing-action-bar.html

有了这个源代码:

svn checkout http://styled-action-bar.googlecode.com/svn/trunk/ styled-action-bar-read-only

但是,我得到的/res/values/styles.xml问题。

此:

<!-- style for the tabs --> 
<style name="MyActionBarTabStyle" parent="android:style/Widget.Holo.Light.ActionBarView_TabView"> 
    <item name="android:background">@drawable/actionbar_tab_bg</item> 
    <item name="android:paddingLeft">32dp</item> 
    <item name="android:paddingRight">32dp</item> 
</style> 

与示数:

Error retrieving parent for item: No resource found that matches the given name 'android:style/Widget.Holo.Light.ActionBarView_TabView'.

但是,使用下面的答案,然后通过源代码的Android挖,我可以看到主题确实存在:

https://stackoverflow.com/a/7149389/420001

我在项目中改变的唯一方法是将它从android-11移动到android-14,然后在Eclipse中运行“Android”>“修复项目属性”。我注意到在那个答案中链接到的repo,列出了风格,是在分支主人,所以我不明白为什么这个主题是不明智的。

只是为了测试,我把这段代码放在我工作的android-14目标应用程序中,减去背景可绘制,它会抛出相同的错误。

回答

8

根据https://stackoverflow.com/a/7837756/1003511中的链接,有Widget_Holo_Light_ActionBar_TabView但不是Widget_Holo_Light_ActionBarView_TabView。自该教程编写以来,资源可能已被重命名。它说,没有额外的“视图”的版本已经包含在API级别13以后 - 如果教程最初是在11上编写的,它有可能在13年重命名,并且由于您运行14,您只能看到重命名的版本。我会尝试删除多余的“视图”,看看代码是否运行。

+1

宾果。 'Widget.Holo.Light.ActionBar.TabView'做到了。谢谢! – Josh