首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓6中的windowBackground (Marshmallow)

安卓6中的windowBackground (Marshmallow)
EN

Stack Overflow用户
提问于 2015-10-07 14:33:40
回答 4查看 2.4K关注 0票数 14

我已经用以下元素为我的应用程序定义了基本样式:

代码语言:javascript
复制
<item name="android:windowBackground">@color/window_background</item>

它为我所有的活动设置了背景色,直到我在Android 6上测试了我的应用程序,所有的背景都是白色的。在运行预棉花糖的设备上,背景仍然是颜色/窗口_背景。

有人知道如何在Android 6上工作(或者为什么不能工作)?

编辑一些更多的信息:我的目标是API 22,我没有改变任何以前的版本,也没有升级API,只是运行在Android 6上改变了背景。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-10-10 09:52:26

我还没有找到任何可能导致这种情况的马什玛洛的具体情况。因此,我的建议是:

将背景颜色资源更改为可绘制形状资源。

发自:

代码语言:javascript
复制
<item name="android:windowBackground">@color/window_background</item>

至:

代码语言:javascript
复制
<item name="android:windowBackground">@drawable/window_background</item>

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <solid android:color="@color/window_background"/>
</shape>

如果您没有检查所有视图的不透明度:

确保您的windowBackground实际上是大多数活动的背景(特别是在可滚动部分,其中透支是最重要的避免部分),尽可能删除不透明的视图背景。

使您的windowBackground为您工作而不是使用null

我认为这是有趣的,看看如何设置背景层的优先级。我不确定您是否设置了任何视图背景或如何设置您的应用程序,但这是值得一读的。

背景由几个层次组成,从后到前:

  • 主题的背景图
  • 纯色(通过setColor(Int)设置)
  • 两个可绘制对象,以前和当前(通过setBitmap(位图)或setDrawable(可绘制)设置),它们可能处于过渡状态

BackgroundManager

我找不到Marshmallow中的主题是否有区别,或者元素的顺序是否不同,似乎没有根本的变化,我也找不到这方面的缺陷。

我希望这有帮助,让我知道,我可以再看看。

如果这没有帮助,那么可能值得发布更多与此问题相关的代码。干杯。

票数 3
EN

Stack Overflow用户

发布于 2015-10-10 17:28:05

我以前也有同样的问题,但是我通过尝试发现,如果我在我的风格中评论actionBarTheme,它就会突然开始工作。我深入研究了我的样式,发现在注释完之后,操作栏的样式正在设置一个android:background属性,现在一切都如期而至。

票数 1
EN

Stack Overflow用户

发布于 2015-10-14 00:22:32

如果您正在使用AndroidStudio1.4或更高版本,请转到主题所在的样式,然后单击右上角的"Open“。然后在那里改变你的窗口背景。它应该在“android:彩色背景”之下。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32995079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档