android Matrix图片的缩放和拖动

本文探讨在Android开发中如何使用Matrix对图片进行动态缩放和拖动。当图片尺寸超过屏幕或过小时,需要进行相应操作。Matrix提供平移、缩放、旋转和斜切功能,通过set、pre、post系列方法进行矩阵变换。文章展示了从原图到缩略图、放大图再到拖动图的效果,并提供了包含android:scaleType="matrix"关键属性的XML布局代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

              开发中经常遇到图片的大小超过手机屏幕的大小,或者图片过小,在手机上显示出来太小,这时候我们就需要对图片进行放大缩小或者拖动。

         android为ImageView提供了scaleType的属性,在scaleType的属性值有多种,大部分是根据高和宽经行缩放,但是无法动态的缩放,只有matrix是可以进行动态缩放的,所以我们在这之前有必要了解一下matrix属性。

       Matrix主要用于对平面进行平移(Translate),缩放(Scale),旋转(Rotate)以及斜切(Skew)操作。为简化矩阵变换,Android封装了一系列方法来进行矩阵变换;其中包括:

set系列方法:setTranslate,setScale,setRotate,setSkew;设置,会覆盖之前的参数。
pre系列方法:preTranslate,preScale,preRotate,preSkew;矩阵先乘,如M' = M * T(dx, dy)。
post系列方法:postTranslate,postScale,postRotate,postSkew;矩阵后乘,如M' = T(dx, dy) * M。
通过将变换矩阵与原始矩阵相乘来达到变换的目的。

       接下来我们回到正题。首先看效果图:(有哪位大神知道真机上哪个App可以做gif图,给推荐一下。现在只能给大家一张一张的上图了,哈哈。。)

         图片顺序依次是  原图——缩略图——放大图——拖动图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值