码迷,mamicode.com
首页 > 编程语言 > 详细

java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x12

时间:2015-06-16 18:46:14      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

最近使用Android Studio开发一个新项目,刚做完几个界面,跑在android 5.0上面很正常,因为都是挺简单的布局,本以为应该不存在兼容性问题(Flag啊)。

 

偶然用了一个4.x的实机测试,发现杯具了,直接报错退出了,发现log里面打出这么一句:

 

java.lang.UnsupportedOperationException: Can‘t convert to color: type=0x2

 

难以理解啊,没办法一步一步调试吧。

 

顺便说一下调试要注意的问题,如果compileSdkVersion与实际出错的android版本不符合,是没法设置断点的。

改为一致之后,一步一步看,最后发现问题出在一个drawable xml文件上,之前是这么写的:

 

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <stroke
        android:width="0.5dp"
        android:color="?colorPrimary" />
</shape>

也是摸不着头脑,很正常啊。尝试一下吧?colorPrimary改成直接的color引用试一试吧。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <stroke
        android:width="0.5dp"
        android:color="@color/carnation" />
</shape>

一运行,果然成功了。

 

看起来像是android4.x系统上因为某种原因,无法在drawable xml文件里面使用attr属性,5.x上没有这个问题。

 

希望对遇到类似

can‘t convert xxx type=0x00

问题的朋友有所启发和帮助。

 

如果有人能够告诉我具体原因,我也会十分感谢(果然android兼容是个大坑啊!

java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x12

标签:

原文地址:http://www.cnblogs.com/DarkMaster/p/4581126.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!