在自定义属性的时候,运行报错了:Caused by: java.lang.UnsupportedOperationException: Can’t convert to integer: type=0x3
原因:我在定义View的时候,定义了图片的属性,获取代码如下
case R.styleable.NaviBottomBar_defaultFirstIcon:
defaultResIds[0] = types.getInteger(attr, 0);
break;
然后就报错了,而在xml中布局的时候,就一直有warning: drawable… in attr “defaultFirstIcon” is a inviald integer。
解决:正确的代码如下,将 getInteger 改成 getResourceId
defaultResIds[0] = types.getResourceId(attr, 0);
本文介绍了一种在自定义View时遇到的图片属性设置错误及其解决方案。错误表现为尝试将一个资源ID类型的图片属性误作为整型处理,导致程序运行时报错。通过将获取属性的方法从getInteger改为getResourceId,成功解决了该问题。
9366

被折叠的 条评论
为什么被折叠?



