Android中Matrix开发汇总

开发中遇到一些涉及到Matrix的地方,现在此归纳,便于日后查阅。

通过对ImageView设置Matrix来实现ImageView中图片的单指拖动和两指缩放

核心方法:
imageView.setImageMatrix(matrix);
所以我们的重点在于去操作一个Matrix.
该处主要用到的是利用Matrix实现缩放(Scale)和位移(Translate)

Android图片旋转,缩放,位移,倾斜,对称完整示例(一)——imageView.setImageMatrix(matrix)和Matrix

这里没有什么新意核心方法仍然是imageView.setImageMatrix(matrix);

还是主要去操作了一个Matrix.然后将此修改过的Matrix设置给ImageView.

在这里是一个自定义的ImageView继承自系统的ImageView.

所以每次在给该自定义ImageView调用setImageMatrix(matrix);方法时它都会调用onDraw()方法

Android图片旋转,缩放,位移,倾斜,对称完整示例(二)——Bitmap.createBitmap()和Matrix

在该例子中主要利用Bitmap.createBitmap(...matrix...)和Matrix实现图像的旋转,缩放,位移,倾斜.

该方式的作用和mImageView.setImageMatrix(matrix);是一样的

所以:

对于图片的旋转,缩放,位移,倾斜以及对称都是利用Matrix实现的!只是说作用的对象不同.

(1)利用imageView.setImageMatrix(matrix)作用于ImageView.

   因为ImageView展示了图片,所以Matrix的效果可在图片体现

(2)利用Bitmap.createBitmap(...matrix...)直接作用于新生成的Bitmap

Matrix的set,pre,post调用顺序

这里主要是理解Matrix的set,pre,post调用顺序.

比如有时候困惑为什么pre或者post没有起到作用,看到这个就应该可以理解了

生成Bitmap的倒影

这里也使用到了Matrix

以后会陆续补充归纳.

时间: 2024-09-16 07:53:10

Android中Matrix开发汇总的相关文章

Android中WebView开发汇总

1 去掉WebView的白色背景 2 WebView的超时处理 3 WebView加载网络PDF资源 4 图片自适应WebView大小(铺满WebView) 5 WebView利用UserAgent传递SESSIONID 6 监听WebView滑动到底部 7 WebView长按后调用文字复制功能 8 Android硬件加速以及WebView的onPause,onResume,OnDestroy 9 WebView不能加载Twitter的问题 10 WebView加载本地SD卡上的图片 11 We

详谈Android中Matrix的set、pre、post的区别

说set.pre.post的区别之前,先说说Matrix. Matrix包含一个3 X 3的矩阵,专门用于图像变换匹配. Matrix提供了四种操作: •translate(平移) •rotate(旋转) •scale(缩放) •skew(倾斜) 也就是说这4种操作都是对这个3 X 3的矩阵设值来达到变换的效果. Matrix没有结构体,它必须被初始化,通过reset或set方法. OK,Matrix介绍完了,我们来看看set.pre.post的区别. pre是在队列最前面插入,post是在队列

【Android】Android中WIFI开发总结(一)

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://smallwoniu.blog.51cto.com/3911954/1334951        WIFI就是一种无线联网技术,常见的是使用无线路由器.那么在这个无线路由器的信号覆盖的范围内都可以采用WIFI连接的方式进行联网.如果无线路由器连接了一个ADSL线路或其他的联网线路,则又被称为"热点".      在Android中对Wifi操作,android本身提供了

我的Android进阶之旅------>Android中Drawable分类汇总详解

Android把可绘制的对象抽象为Drawable,不同的图形图像资源就代表着不同的drawable类型.Android FrameWork提供了一些具体的Drawable实现,通常在代码中都不会直接接触Drawable的实现类.         在实际的开发过程中,会把使用到的资源都放置在res/drawable目录,剩下的工作交给Android SDK 就行了,当需要使用图片资源的时候,可以使用@drawable标志在xml中引用drawable资源就行,也可以在代码中使用id引用这些dra

【Android】Android中WIFI开发总结(二)

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://smallwoniu.blog.51cto.com/3911954/1338618 今天就剖析一个WIFI搜索.创建.关闭.连接及一些简单的动画的综合案例. 首先,我们还是看一下我们项目的框架 MainActivity类:(处理wifi消息,加载UI) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2

Android中利用matrix 控制图片的旋转、缩放、移动_Android

本文主要讲解利用android中Matrix控制图形的旋转缩放移动,具体参见一下代码: 复制代码 代码如下: /**  * 使用矩阵控制图片移动.缩放.旋转  */  public class CommonImgEffectView extends View {      private Context context ;      private Bitmap mainBmp , controlBmp ;      private int mainBmpWidth , mainBmpHeigh

Android中利用matrix 控制图片的旋转、缩放、移动

本文主要讲解利用android中Matrix控制图形的旋转缩放移动,具体参见一下代码: 复制代码 代码如下: /**  * 使用矩阵控制图片移动.缩放.旋转  */  public class CommonImgEffectView extends View { private Context context ;      private Bitmap mainBmp , controlBmp ;      private int mainBmpWidth , mainBmpHeight , c

ANDROID内存优化(大汇总——中)

写在最前: 本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上把网上搜集的各种内存零散知识点进行汇总.挑选.简化后整理而成. 所以我将本文定义为一个工具类的文章,如果你在ANDROID开发中遇到关于内存问题,或者马上要参加面试,或者就是单纯的学习或复习一下内存相关知识,都欢迎阅读.(本文最后我会尽量列出所参考的文章). OOM: 内存泄露可以引发很多的问题: 1.程序卡顿,响应速度慢(内存占用高时JVM虚拟机会频繁触发GC) 2.莫名消失(当你的程序所占内存越大,它在

Android高手进阶教程(二十二)之Android中几种图像特效处理的集锦汇总!!_Android

大家好,这一节给大家分享的是Android中几种图像特效处理的小技巧,比如圆角,倒影,还有就是图片缩放,Drawable转化为Bitmap,Bitmap转化为Drawable等等. 废话少说了,直接讲解今天的实例,本例主要是先获取壁纸(getWallpaper()),然后对当前壁纸的一些特效处理.大家按步骤一步一步来: 第一步:新建一个Android工程命名为ImageDemo,工程结构如下: 第二步:新建一个.Java文件,命名为ImageUtil.java,在里面定义一些图片处理方法,代码如