Android使用滑翔加载网络图片等比例缩放的实现方法

  

在做安卓图片加载的时候,由于手机屏幕受限,很多大图加载过来的时候,我们要求等比例缩放,比如按照固定的宽度,等比例缩放高度,使得图片的尺寸比例得到相应的缩放,但图片没有变形。显然按照android: scaleType不能实现,因为会有很多限制,所以必须要自己写算法。

  

通过滑翔来缩放

  

其实滑翔提供了这样的方法。具体是显示继承转换的setResource方法。

  

(1)先获取网络或本地图片的宽高
  (2)获取需要的目标宽
  (3)按比例得到目标的高度
  (4)按照目标的宽高创建新图

     /* *   *===========================================*版本:1.0   *描述:设置图片等比缩放   * & lt; p>滑动处理图片。;/p>   *===========================================*/公开课TransformationUtils延伸ImageViewTarget{   私人ImageView目标;   公共TransformationUtils (ImageView目标){   超级(目标);   这一点。目标=目标;   }   @Override   保护无效setResource(位图资源){   view.setImageBitmap(资源);//获取原图的宽高   int宽度=resource.getWidth ();   int高度=resource.getHeight ();//获取imageView的宽   int imageViewWidth=target.getWidth ();//计算缩放比例   浮动sy=(浮动)(imageViewWidth * 0.1)/(浮动)(宽* 0.1);//计算图片等比例放大后的高   int imageViewHeight=(int)(高* sy);   ViewGroup。LayoutParams params=target.getLayoutParams ();   参数个数。身高=imageViewHeight;   target.setLayoutParams (params);   }   }      

之后在滑翔设置变换

        Glide.with(这)   .load (newActiviteLeftBannerUrl)   .asBitmap ()   .placeholder (R.drawable.placeholder)   .into(新TransformationUtils(目标));      

转换这是滑动的一个非常强大的功能了,它允许你在负载图片→到ImageView中间这个过成对图片做一系列的变换。比如你要做图片高斯模糊,添加圆角,做度灰处理,圆形图片等等都可以通过转换来完成。

  

  

以上所述是小编给大家介绍的Android使用滑翔加载网络图片等比例缩放的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

Android使用滑翔加载网络图片等比例缩放的实现方法