您的位置:首页 > 移动开发 > Android开发

android imageview显示不全或者gilde加载不全

2017-10-21 11:23 357 查看
Imageview显示图片无非一是加载本地图片,而是加载网络图片

一,加载本地图片

1.是否设置图片或者父布局大小导致无法完全显示

2.是否设置圆角

3.是否设置padding或者margin

*

4.使用android:scaleType时,要设置src,设置background不起做用.一般情况下如果是网络加载图片,默认的是src,所以在设置android:scaleType时,如果要全屏显示,请对应自己需要的类型

CENTER /center按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示

CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)**

FIT_CENTER / fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示

FIT_END / fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置

FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置

FIT_XY / fitXY 把图片不按比例扩大/缩小到View的大小显示 MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。

如果是网络请求图片,不设置android:scaleType也可以。只需要在glide中设置即可。

二,加载网络图片

这个需求我做的比较蛋疼,我现在使用的是Gilde加载图片。当我按照Imageview设置android:scaleType后,要么图片被裁减后显示全部,要么显示全部但是不填充全部局。之后我在想如果不是布局问题会不会是gilde的使用问题。

Glide.with(getActivity())
.load(GlobalParam.IP + data.getImage())
.centerCrop()//会裁减图片填充布局
.crossFade()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.mipmap.upload_image_side)
.error(R.mipmap.upload_image_side)
.into(imageView);


之后我有发现了 .fitCenter()这个方法,与本地设置图片大小效果是一样的。完美解决图片显示不全问题,

特此记录一下。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐