簡體   English   中英

我不能使用顏色值來設置布局的背景

[英]I can't use the color value to set the background for the layout

這是我的布局

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/c8" android:orientation="vertical" android:gravity="center_horizontal" tools:context="com.leo.accelerate.activity.SplashActivity"> <ImageView android:layout_marginTop="190dp" android:layout_width="146dp" android:layout_height="146dp" android:src="@mipmap/icon_splash" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="36dp" android:src="@mipmap/boost_shanping_name" /> </LinearLayout>

我得到了錯誤:

     Caused by: android.content.res.Resources$NotFoundException: Resource "com.leo.accelerate:style/RtlOverlay.DialogWindowTitle.AppCompat" (7f0b0028)  is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f0b0028 a=-1 r=0x7f0b0028}

根據地址值0x7f0b0028找到問題顏色

 find . -type f | xargs grep "0x7f0b0028"

result:
./app-default-release/res/values/public.xml:    <public type="color" name="c8" id="0x7f0b0028" />
./app-default-release/smali/com/leo/accelerate/R$color.smali:.field public static final c8:I = 0x7f0b0028

問題代碼是名為c8color值,在布局中的背景屬性中使用

當我用drawable替換他時,問題不存在。

我該如何解決這個問題?

請檢查您的顏色值@color/c8 您的顏色c8值可能是錯誤的。 嘗試另一種顏色,它是工作。 嘗試使用android:background="@android:color/black" 如果它有效,那么我確定您的顏色值是錯誤的。 您不能使用像0x7f0b0028這樣的十六進制顏色值。

它應該可以正常工作,我知道可能導致問題的唯一原因是:

  1. 您提供的顏色屬性名稱不正確。

  2. 不支持您在顏色值文件夾中賦予屬性的值。

  3. 您在您嘗試繪制的 xml 項目中多次寫入背景屬性。

  4. 您使用的模擬器不支持此顏色。

請務必檢查所有這些原因,如果在確定所有這 4 個原因后您仍然有問題,請聯系我們,我們將嘗試進一步調查您的問題。

最好的問候, Lidor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM