Java 某些android设备的背景颜色错误
我正在开发一个android应用程序。我在我的资源中定义了如下颜色:Java 某些android设备的背景颜色错误,java,android,xml,android-build-flavors,Java,Android,Xml,Android Build Flavors,我正在开发一个android应用程序。我在我的资源中定义了如下颜色: <color name="toolbar_color">#ffcb00</color> #ffcb00 我已经在“相对布局”等布局中设置了这种颜色作为背景,并且这种颜色在大多数android设备中都能正确显示。但在三星S6310安卓4.2.1中,我遇到了一个问题。我的颜色不显示,android设备显示的不是这种颜色,而是透明的颜色。 我已经搜索过这个问题,解决方案是使用java代码为我的布局设置
<color name="toolbar_color">#ffcb00</color>
#ffcb00
我已经在“相对布局”等布局中设置了这种颜色作为背景,并且这种颜色在大多数android设备中都能正确显示。但在三星S6310安卓4.2.1中,我遇到了一个问题。我的颜色不显示,android设备显示的不是这种颜色,而是透明的颜色。
我已经搜索过这个问题,解决方案是使用java代码为我的布局设置颜色。但是我有很多风格构建,我不想更改我的java代码
现在我有两个问题:
1-为什么会发生这种情况
2-这个问题的解决方案是什么?好吧,用简单的术语回答你的问题 为什么? 这只是Android支持库的工作。Android支持库,现在它是向后兼容的,它应该处理这个问题。它应该使应用程序正确地读取这些资源。但有时情况并非如此。这主要是原因。 如果发生类似情况,您可以阅读更多关于如何设置资源的信息 解决办法 这有很多解决办法
JAVA-code
设置资源颜色或资源android {
...
defaultConfig {
...
vectorDrawables.useSupportLibrary = true
}
...
}
无论如何,最好是通过编程来实现。您可以使用Android Studio主题编辑器并尝试更改背景颜色。您可以在主题编辑器和上获得更多信息。如果是android版本,您应该检查版本并在那里设置颜色
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLYBEAN) {
// Your required color
} else {
}
如果这是android版本的问题,希望这能有所帮助。您有基于密度的资源吗?如果是,则为每个密度创建资源文件。看一看:谢谢你的回答。第一个和第三个答案不起作用,我不想用第二个答案。@Hamidrezashokohi没问题。我会四处寻找更多的解决方案。但是,第一个解决方案对我有效。