这仅在Android 6.0(Marshmallow)上发生。我已将style.xml文件设置为使用三种颜色:
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
<item name="colorPrimary">@color/teal</item>
<item name="colorPrimaryDark">@color/oteal_dark</item>
<item name="colorAccent">@color/teal</item>
</style>
在我的工具栏,标签视图和单个视图中...我使用
引用颜色android:background="?attr/colorPrimary"
然而奇怪的是,当我使用该颜色打开一个带有视图的活动时......它是白色的(或者很可能是设置为透明的)。当我返回活动时,工具栏和tabview也变得透明。有趣的是,即使我将颜色硬编码到视图中,它仍然会发生。如果我将硬编码值设置为不同(仅为1),则颜色会再次出现。
它与风格有关,但我不确定是什么。有没有人遇到过这个问题?
答案 0 :(得分:2)
好的,我发现了这个问题。对于我正在做的工具栏动画,我将背景设置为alpha 0.
mActivity.getToolbar()的getBackground()setAlpha(0);
其他观点正在分享此背景。在Android 6中,操作系统现在与各种视图共享相同的对象,因此在此处将其设置为0将影响应用程序中的任何其他视图。我的修复是重置碎片破坏上的alpha。