1. 程式人生 > >自定義控制元件裡面使用自定義屬性,出現錯誤Can't convert value at index 0 to color: type=0x5

自定義控制元件裡面使用自定義屬性,出現錯誤Can't convert value at index 0 to color: type=0x5

首先背景是eclipse的專案轉到Androidstudio上來,as的版本是3.0以上的,然後新建專案,複製貼上xxx的,首先出了個問題,佈局檔案說有錯,需要正確build才行,有毒,坑的很,重啟as才搞定。(對了,因為新版的as新建佈局,都是用的constrantlayout,我是改了系統樣式,刪掉constant的依賴包然後重啟as)然後裝app,發現報錯。

Caused by: java.lang.UnsupportedOperationException: Can't convert value at index 0 to color: type=0x5         at android.content.res.TypedArray.getColor(TypedArray.java:496)         at com.fingerfun.a8h5yap.LineProgressBar.<init>(LineProgressBar.java:28)

我第一反應是自定義屬性拿不到?

xmlns:custom="http://schemas.android.com/apk/res-auto"

名稱空間哈,custom:lineColor="#FFCC00"控制元件使用哈。

非常好這篇文章啟發了我,擦

刪掉名稱空間,用程式碼去設定,程式是可以跑了,。然而還是有一些問題,先不管,做個記錄。