6

所以我们已经成功地从 Zappos 应用程序中删除了 ActionBarSherlock,转而使用新的 ActionBarCompat,它在 Honeycomb+ 上运行良好,但在 Gingerbread 上,操作栏会扩展以填满整个屏幕,我不知道为什么会这样。我们基本上只是将所有主题/样式/对 ActionBarSherlock 的引用更改为 ActionBarCompat 中的等价物。以下是该问题的屏幕截图。其他人在 GB 上遇到过这个并知道修复吗?它正在为我们等待发布:\

4

6 回答 6

5

好吧,所以我终于想通了……我们将 appcompat 源代码复制为库项目,而不是在 gradle 中使用 com.android.support:appcompat-v7:18.0.+ 依赖项。在切换到 gradle 中的依赖项并从我们的项目中删除 appcompat 源之后,它现在可以按预期工作。

于 2013-07-29T19:57:41.680 回答
0

我的问题是我的自定义 actionBarStyle 继承自父级。

<style name="AppTheme" parent="AppBaseTheme">
    <item name="actionBarStyle">@style/sfActionBar</item>
    <item name="android:actionBarStyle">@style/sfActionBar</item>
</style>

我的自定义样式最初是:

<style name="sfActionBar" parent="Widget.Sherlock.ActionBar">...</style>

让它在除姜饼之外的所有东西上工作的变化是:

<style name="sfActionBar" parent="@android:style/Widget.ActionBar">...</style>

正确的修改:

<style name="sfActionBar" parent="@style/Widget.AppCompat.ActionBar">...</style>
于 2013-12-09T18:17:26.203 回答
0

当我从使用 ActionBar AppCombat 到使用 ActionBarSherlock 时,我遇到了类似的问题,即操作栏填满了整个屏幕。在 value-v11 文件夹 style.xml 文件中。我必须删除从 ActionBar appCombat 继承的 ActionBar Style。

于 2013-09-27T07:56:39.033 回答
0

我也有这个问题。问题是我对 Gingerbread 的主题定义指向了一种不存在的风格。

我有这个values/themes.xml

<item name="actionBarStyle">@style/mytheme_solid_ActionBar</item>

但这mytheme_solid_ActionBar仅在values-v11/styles.xml和中定义values-v14/styles.xml

我只需要将它添加到,values/styles.xml以便 Gingerbread 设备将具有为操作栏定义的正确样式(继承自Widget.AppCompat.Light.ActionBar.Solid.Inverse)。

于 2013-10-27T17:44:13.007 回答
0

一旦我遇到类似的问题(工具栏的颜色填满了姜饼的整个屏幕),解决方案就是android:clipChildren="false"从工具栏的父视图中删除。

于 2014-12-01T10:01:50.177 回答
0

这是问题的答案:http: //gmariotti.blogspot.com.br/

只是添加了这个:

dependencies {
compile 'com.android.support:appcompat-v7:18.0.+'
}
于 2013-08-04T23:59:33.110 回答