- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用 AppCompat 22.1.1。
由于某些原因,我的应用程序可以在用户导航期间动态更改其主题。 (例如,当您从“我的应用程序”部分移动到“电影”部分时,移动到应用程序的另一部分,例如在 Google Play 商店应用程序中)
为了避免为每个主题创建一个可绘制背景,我尝试创建这样的背景:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="?attr/colorPrimary" /></shape>
当以编程方式更改主题时,我想 colorPrimary 也会更改,之后膨胀的按钮将被染上新主题的颜色。
但是我在 Lollipop 之前有一个膨胀异常(但在 Lollipop 上有效)。 drawable找不到属性attr/colorPrimary,为什么?
这是我正在使用的简单 theme.xml:
<style name="MyTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/my_blue</item>
<item name="colorPrimaryDark">@color/my_blue_dark</item>
<item name="colorAccent">@color/my_blue_light</item>
</style>
颜色在 values/colors.xml 中,只有六色。所有资源都在“values”目录中,而不是在 values-r21 目录中。
最佳答案
在res/color/中创建一个color_primary.xml颜色资源:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="?attr/colorPrimary"/>
</selector>
然后在您的可绘制对象中引用它:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/color_primary" />
</shape>
关于android - 使用 AppCompat 在 pre-lollipop 上的 drawable 中使用 colorPrimary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29918582/
我找不到任何关于两者之间差异的信息: android:textColor="?attr/colorPrimary" 对比 android:textColor="?colorPrimary" 我读到“?
有人可以告诉我有什么区别吗 ?android:attr/colorPrimary 和 ?attr/colorPrimary 无论我使用哪个,结果都是一样的。尽管第一个选项导致android.view.
例如:在 values-v21/styles.xml 中 @color/primaryColor ` 它有效,而在 values/styles.xml 中,它必须是这样的: @c
我可以防止状态栏的颜色变成colorPrimary吗?我的意思是,我不想更改状态栏颜色,并保持原样(系统默认)。我在谷歌上搜索过这个,答案是隐藏状态栏。但我不想隐藏它。 我也不想将原色更改为状态栏的默
这是我的 colors.xml 文件。 #00ccff #00ccff #00ccff #212121 #000000 #FFFFFF #
根据 https://developer.android.com/training/material/theme.html , colorPrimary 应该设置操作栏颜色。 这在我的 mainAct
我正在学习使用工具栏小部件。 在按照 developer.android.com 上的指南进行操作时,我找到了这个 android:background="?attr/colorPrimary" 当我
根据谷歌文档,我应该可以在主题中使用 colorPrimary 设置工具栏背景的颜色,但它不起作用。这是我拥有的: 样式.xml: @color
我的问题很奇怪(我认为)。 使用 AppCompat 我对 ?attr/colorPrimary 的引用不起作用。 颜色.xml: @color/primary_material_dark
我正在尝试使工具栏背景色透明,但似乎显示的是 colorPrimary 主题。当我将工具栏的背景设置为标准颜色时,它会覆盖 colorPrimary 并按预期工作,但是有没有办法让我完全摆脱它以使工具
我正在使用 Theme.MaterialComponent ,但它不影响我的actionBar,为什么? 样式.xml @color/colorPrimary
(注意:这与 When using ActionMode, the status bar turns black on Lollipop 有点相关,所以可能有一些额外的信息被我不小心从这个问题中遗漏了
我有一个包含 2 个主题的 Android 应用。并且用户能够从应用程序其他地方的设置 Activity 切换主题。默认主题是 AppThemeBlue,应用启动时一切正常。但是,在用户将主题从设置
我正在尝试以编程方式更改 colorPrimary 和 colorAccent,但我找不到任何与它们相关的方法,例如 setThemeColorPrimary(int color) 。我找到的唯一方法
我只想以编程方式设置 contentScrim。所以我尝试了 int color = ContextCompat.getColor(getActivity(), R.attr.colorPrimary
我需要将应用程序栏上的颜色更改为某种渐变色。我在 drawable 文件夹中创建了 action_bar_bg.xml 文件: 我尝试更改 styles.xml 中的 colorPri
我很难在 Xamarin Studio 中编译我的 Android 应用程序。出现的错误如下: No resource found that matches the given name attr "
我正在尝试从当前主题属性中给我的按钮颜色:android.R.attr.colorPrimary 或 R.attr.colorPrimary 应该返回黄色,但一直给我一种蓝色!我还在 list 中设置
是否有可能以编程方式覆盖 colorPrimary、colorPrimaryDark 和 colorAccent 值,并在运行时从 java 代码相应地进行更改?如果可能请帮忙。 最佳答案 不,这不可
使用新的 Lollipop v21 API,我尝试使用 setStatusBarBackgroundColor 设置半透明状态栏的背景颜色,但使用 R.attr.colorPrimary 会导致颜色错
我是一名优秀的程序员,十分优秀!