Android studio 中CircleImageView无法使用
错误日志
看看你布局文件里用的示什么控件,这个地方不是说了,AppCompatImageView不能实例化为CircleImageView,你看看布局文件不是用的是CircleImageView还是AppCompatImageView
看下35行的代码,引入的import包可能不对。
不知道你这个问题是否已经解决, 如果还没有解决的话:简单小结下 CircleImageView 的原理:
(1) 通过 BitmapShader 构造一个可以绘制出图片的画刷
(2) 通过 View 的大小,Padding,边框等计算出图片需要进行变换的变换矩阵
(3) 通过 canvas.drawCircle() 方法绘制出最终需要的圆形图片
针对您在使用CircleImageView时遇到的问题,可能是因为您没有正确导入该库或者没有正确使用该库。您可以尝试以下步骤解决问题:
implementation 'de.hdodenhof:circleimageview:3.1.0'
<de.hdodenhof.circleimageview.CircleImageView android:id="@+id/profile_image" android:layout_width="96dp" android:layout_height="96dp" android:background="@color/colorPrimaryDark" android:layout_marginTop="20dp" app:civ_border_width="2dp" app:civ_border_color="@color/colorAccent"/>
如果以上步骤无法解决您的问题,可能是由其他原因导致的,建议尝试重新安装或更新Android Studio,并查看相关日志或错误提示以进一步排查问题。
至于您提到的关于使用ImageView加载图片时是否会影响图片占用内存大小的问题,经过实验得出结论:缩放类型不会影响图片占用内存大小,只会影响Drawable在绘制图片到屏幕时的区域大小。具体原因可能是因为图片最终以Bitmap形式存在于内存中,ImageView的缩放类型只是将图片展示的区域按缩放规则进行划定,并没有对图片本身产生作用。具体可参考参考资料中的测试场景和代码示例。