Crash——TaskDescription's primary color should be opaque

問題中文描述:任務描述:primary color 本應該爲不透明的

今天寫好values-v21 下的style之後,

<span style="font-size:18px;">   <color name="deep_blue">#354c9b</color>
   <color name="sky_blue">#2878f4</color></span>

<span style="white-space:pre">	</span><style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar"><!--Light.DarkActionBar表示默認的黑色主體的Actionbar-->
                <!-- Customize your theme here. -->
                <item name="colorPrimary">@color/sky_blue</item>
                <item name="colorPrimaryDark">@color/deep_blue</item>
                <item name="colorAccent">@color/material_deep_teal_200</item>
                <item name="android:textColorPrimary">@color/white</item>
        </style>

運行在5.0以上的機器後,出現瞭如題的bug,開始覺得我設置的顏色也不是透明的啊,怎麼就報這個錯呢?費解......後來上了stackOverFlow之後,發現真的是顏色問題。

原因在於答案給出的顏色值是6位十六進制數,而我的是8位16進制數,在科普了十六進制顏色表示法之後,愉快的發現前兩位表示顏色的透明度,而透明度是00~FF,表示從完全透明到完全不透明,而我們android5.0+要求Primary系列的顏色必須要不透明。因此我們要麼缺省,要麼自己乖乖填上FF。


營養補充:

因爲在5.0一下的系統上,我們是無法自定義colorPrimaryDark狀態欄的顏色,這個屬性只有在5.0+的系統上才能生效。而在Android5.0上顯示我們需要寫好values-v21下的一份資源文件,而此時,5.0+上,系統會自動找到values-v21下的style進行自定義colorPrimaryDark的顏色,而對於colorPrimary還是由values下的style做主。。。。。。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章