首页 > 代码库 > Android ImageView的ScaleType属性
Android ImageView的ScaleType属性
ImageView中ScaleType属性表示图片的显示方式,共有8种取值:
matrix:将图片显示到定义好的宽度和高度描述的矩形中,不做任何缩放(图形的左上角对齐矩形的左上角)。意味着,如果矩形比图形大,则图片显示在左上角,如果矩形比图形小,则只会显示图形矩形部分的大小。
fitXY:将图片不按等比例扩大/缩小到View的大小显示(确保图片会完整显示,并充满View)
fitStart:将图片按照等比例进行缩放,并显示在矩形的左上方(确保图片会完整显示,矩形的短边会充满)
fitCenter:将图片按照等比例缩放,并显示在矩形的中间(确保图片会完整显示,矩形的短边会充满)。ImageView的默认状态
fitEnd:据图片按照等比例缩放,并显示在矩形的右下方(确保图片会完整显示,矩形的短边会充满)
fitStart、fitCenter、fitEnd三种缩放的方式都一样,只是显示的位置不同。无论缩小还是放大,都必须要保证,矩形的短边能被充满。
center:不做任何缩放操作,将图片按照原来的大小居中显示,超出ImageView大小部分被截断,注意是从两边等分截断。
如果图片大小小于ImageView大小,则居中显示。(图片可能部分显示)
centerCrop:将图片按照等比例缩放,并截取缩放后的中间部分显示在ImageView中。(使得图片的高等于View的高,使得图片宽等于或大于View的宽)(图片可能部分显示)
centerInside:将图片大小大于ImageView的图片进行等比例缩小,直到整幅图能够居中显示在ImageView中,小于ImageView的图片不变,直接居中显示。(图片完整显示)
centerInside和fitCenter最主要的区别是,当ImageView大小大于图片大小时候,centerInside直接显示图片原大小,而fitCenter,则会放大图片,使得图片能够充满矩形的短边。
Android ImageView的ScaleType属性