本文实例讲述了Android实现旋转,放大,缩小图片的方法。分享给大家供大家参考,具体如下:
项目中需要做到一个预览图片的功能
最初设想自定义个一个view,在onDraw中用的是生成新的Bitmap,来放大,缩小
但由于手机内存是有限制的,在放大几倍以后,就会core掉。
后面直接选用imageview来完成此项任务,很遗憾,虽然不会重复生成bitmap导致core掉,但是imageview的大小限制是图片无法再放大或放大也只能在这个区域中。
最后选定用 当然 Drawable来做了
private Drawable image;
private int picWidth;
private int picHeight;
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//图片缩放使用 picwidth,picheight来控制
int l = (getWidth() - picWidth) / 2;
int r = (getWidth() + picWidth) / 2;
int t = (getHeight() - picHeight) / 2;
int b = (getHeight() + picHeight) / 2;
image.setBounds(l, t, r, b);
canvas.rotate(rotateDegre, getWidth() / 2, getHeight() / 2); //旋转图片
image.draw(canvas);
}
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
您可能感兴趣的文章:Android中利用matrix 控制图片的旋转、缩放、移动Android Tween动画之RotateAnimation实现图片不停旋转效果实例介绍Android 图片缩放与旋转的实现详解Android实现图片反转、翻转、旋转、放大和缩小android图片处理之让图片一直匀速旋转基于Android 实现图片平移、缩放、旋转同时进行Android单点触控实现图片平移、缩放、旋转功能Android实现对图片放大、平移和旋转的功能Android使用Matrix旋转图片模拟碟片加载过程Android中imageView图片放大缩小及旋转功能示例代码Android开发之图片旋转功能实现方法【基于Matrix】