matrix.setScale(0.5f, 0.5f, 50, 500);//(50,500)代替(0.0)进行缩放
运行如下:
如果将代码换成:
matrix.preScale(0.5f, 0.5f);
运行结果如下:
这里运行的结果与代码:matrix.setScale(0.5f, 0.5f);运行的结果是一样的。其实我想说的是如果单独运行matrix.postScale(0.5f, 0.5f);结果仍然是一样。那么大家肯定会想这三种方法结果是一样的,那有什么区别呢?先别急,这个问题我们文章最后来解决。
这里已经完成了原点缩放和指定点缩放。
(其余三种操作的方法没有一种操作,包含的方法比缩放的方法多,并且方法含义基本与缩放类似,下面的三种操作就不一一的展示其方法了。)
2、Rotate
修改MyView中的构造函数如下:
publicMyView(Context context, AttributeSet attrs) {super(context, attrs);//取得Bitmap对象
this.bitmap = Bit