- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我多次将额外属性应用于 AppTheme 时,它会覆盖前一个。这是我正在使用的代码:
主要 Activity :
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
getTheme().applyStyle(R.style.AppTheme_OverlayPrimaryRed);
// If you change `false` to `true`, the overlay above is overwritten.
if (false) {
getTheme().applyStyle(R.style.AppTheme_OverlayAccentRed);
}
super.onCreate(savedInstanceState);
...
}
AppTheme.OverlayPrimaryRed:
<style name="AppTheme.OverlayPrimaryRed">
<item name="colorPrimary">@color/material_red_500</item>
<item name="colorPrimaryDark">@color/material_red_700</item>
</style>
AppTheme.OverlayAccentRed:
<style name="AppTheme.OverlayAccentRed">
<item name="colorAccent">@color/material_red_A200</item>
</style>
有什么办法可以解决这个问题吗?
最佳答案
您的样式定义 AppTheme.OverlayPrimaryRed
和 AppTheme.OverlayAccentRed
隐式继承自 AppTheme
。由于 AppTheme
可能还包含 colorPrimary
和 colorPrimaryDark
的定义,第二个 applyStyle
语句也将设置这些属性,撤消第一个 applyStyle
调用。
因此,我在对 this question 的回答中没有在样式覆盖名称中使用任何点。 .
如果出于美观原因想要保留点,您可以像这样为叠加层定义一个空的父级样式:
<style name="Overlay">
</style>
<style name="Overlay.PrimaryRed">
<item name="colorPrimary">@color/material_red_500</item>
<item name="colorPrimaryDark">@color/material_red_700</item>
</style>
<style name="Overlay.AccentRed">
<item name="colorAccent">@color/material_red_A200</item>
</style>
关于android - getTheme().applyStyle(...) 多次而不覆盖前一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41779821/
我有两个 Activity :MainActivity.java 和 ThemeActivity.java。在主题 Activity 中,我想在静态方法中使用 getTheme() 方法从主 Acti
当我多次将额外属性应用于 AppTheme 时,它会覆盖前一个。这是我正在使用的代码: 主要 Activity : @Override protected void onCreate(@Nulla
我意识到,对于 Context.getTheme() , 如果我们使用 Application 通常效果不佳作为 Context MyApplication.singletonInstance().g
context.getTheme.obtainStyledAttributes() 有什么区别和 context.obtainStyledAttributes()? 主题是我的应用风格吗? 最佳答案
本文整理了Java中io.kaif.model.zone.ZoneInfo.getTheme()方法的一些代码示例,展示了ZoneInfo.getTheme()的具体用法。这些代码示例主要来源于Git
本文整理了Java中org.apache.poi.xslf.usermodel.XSLFSlideMaster.getTheme()方法的一些代码示例,展示了XSLFSlideMaster.getTh
本文整理了Java中org.apache.poi.xslf.usermodel.XSLFSheet.getTheme()方法的一些代码示例,展示了XSLFSheet.getTheme()的具体用法。这
我想在 Android 应用程序中对图像运行一些 OpenCv 过滤器。我遇到了一个错误,我似乎无法找到它的起源。 堆栈跟踪: java.lang.NullPointerException: Atte
这是 fragment 的java文件代码: @SuppressLint({"NewApi", "ResourceAsColor"}) public void createCardView(Strin
我是一名优秀的程序员,十分优秀!