gpt4 book ai didi

android - 使用 "?android:colorBackground"作为颜色会使我的应用程序在 Galaxy Note 3 (4.4.2) 上崩溃,但在 Nexus 上不会

转载 作者:行者123 更新时间:2023-11-30 01:51:22 28 4
gpt4 key购买 nike

是否有最低 android 版本要求才能访问此颜色或其他内容?我需要将对象的背景颜色设置为“默认”背景颜色,并且“?android:colorBackground”在我的 Nexus 5 (Android 5.1.1) 上运行良好,但它使我的 Note 崩溃。

我有一个名为 editor_border.xml 的可绘制对象,如下所示:

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- content background -->
<item>
<shape>
<solid android:color="?android:colorBackground" />
<corners android:radius="2dp" />
</shape>
</item>
</layer-list>

我使用这个可绘制对象作为布局的背景。展开布局时,我的应用程序因以下错误而崩溃”

10-07 22:23:52.634: E/AndroidRuntime(6512): android.view.InflateException: Binary XML file line #11: Error inflating class <unknown>

再往下

10-07 22:23:52.634: E/AndroidRuntime(6512): Caused by: android.content.res.Resources$NotFoundException: File res/drawable-v4/editor_border.xml from drawable resource ID #0x7f020005

10-07 22:23:52.634: E/AndroidRuntime(6512): Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x2

删除颜色或将其更改为任何其他颜色都可以。

最佳答案

可绘制资源中的自定义属性似乎只能在 API 21 中使用。我找不到支持这一点的来源,但是 a commit来自 Google I/O Schedule 应用程序演示了这一点。

解决方法是拥有 2 种不同的可绘制资源,一种用于 API 21+,另一种用于 API 21 之前的版本,您不应在其中使用自定义属性。

drawable/background.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- content background -->
<item>
<shape>
<solid android:color="@color/your_color" />
<corners android:radius="2dp" />
</shape>
</item>
</layer-list>

drawable-v21/background.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- content background -->
<item>
<shape>
<solid android:color="?android:colorBackground" />
<corners android:radius="2dp" />
</shape>
</item>
</layer-list>

关于android - 使用 "?android:colorBackground"作为颜色会使我的应用程序在 Galaxy Note 3 (4.4.2) 上崩溃,但在 Nexus 上不会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32990784/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com