Gallery2,android原生的图库

图库中图片缩放有两种方式:1.双击放大,2.双指手势放大。

下面说一下修改这里的最大放大倍数。

例子是:修改放大倍数为3倍,照片放到最大后的伸缩范围0.5。

分开两种情况:截图和照片。这两种是不同的缩放倍数,需要两个都进行修改。

截图

packages/apps/Gallery2/src/com/android/gallery3d/ui/PhotoView.java

public class PhotoView extends GLView implements PlayEngine.OnFrameAvailableListener {

//省略代码

@Override

public boolean onDoubleTap(float x, float y) {

if (mIgnoreScalingGesture) return true;

if (mIgnoreSwipingGesture) return true;

if (mPictures.get(0).isCamera()) return false;

PositionController controller = mPositionController;

float scale = controller.getImageScale();

// onDoubleTap happened on the second ACTION_DOWN.

// We need to ignore the next UP event.

mIgnoreUpEvent = true;

if (scale <= .75f || controller.isAtMinimalScale()) {

/// M: [BUG.MODIFY] A black area show at the right side of picture.@{

/* controller.zoomIn(x, y, Math.max(1.0f, scale * 1.5f)); */

//modified by xx start

//1.5最小放大倍数为1.5倍

//scale * 1.5 这是当前获取到,按照大约是1.5倍进行放大,scale的值接近1。4.0f限制的最大放大倍数。

//controller.zoomIn(x, y, Math.max(1.5f, Math.min(scale * 1.5f, 4.0f)));

//这里修改为最大放大倍数为3倍,双击、手势都是3倍。

controller.zoomIn(x, y, Math.max(1.5f, Math.min(scale * 3f, 3.0f)));

//modified by xx end

/// @}

} else {

controller.resetToFullView();

}

return true;

}

}

}

照片

照片的需要修改两个地方,一个是配置最大的放大倍数,另外一个是放大到了最大倍数的数据,手势进行再放大的时候,有一个伸缩的范围,放开,就恢复成最大放大倍数。

packages/apps/Gallery2/src/com/android/gallery3d/ui/PositionController.java

public class PositionController {

// We try to scale up the image to fill the screen. But in order not to

// scale too much for small icons, we limit the max up-scaling factor here.

private static final float SCALE_LIMIT = 3;//最大放大倍数的配置,设置为3倍

private float getMaximalScale(Box b) {

if (mFilmMode) return getMinimalScale(b);

if (mConstrained && !mConstrainedFrame.isEmpty()) return getMinimalScale(b);

return 0.5f;//配置放大最大倍数后,手势再拉伸的放大倍数,倍数为0.5

}

}

就修改上面三个地方就可以了,由于之前在网上找不到具体的修改方式,这一部分也是刚刚接触,看以前的人修改,修改了很多个地方,都不知道哪个是哪个,都不知道是不是瞎改...

跟着瞎改是一件很难受的事,所以还是先理清,再进行准确的修改,这个也便于自己的提升吧。

谢谢。

android 4.2 camera gallery2,Android Gallery2 修改双击、手势放大的最大倍数相关推荐

  1. Android 高仿微信朋友圈动态, 支持双击手势放大并滑动查看图片。

    转载请注明出处: http://blog.csdn.net/sk719887916/article/details/40348873 作者skay: 最近参与了开发一款旅行APP,其中包含实时聊天和动 ...

  2. camera android 版本,Camera for Android

    Camera for Android 介绍 Camera for Android We have designed HD camera app for you. Video capture featu ...

  3. Android开发技巧——Camera拍照功能

    本篇是我对开发项目的拍照功能过程中,对Camera拍照使用的总结.由于camera2是在api level 21(5.0.1)才引入的,而Camera到6.0仍可使用,所以暂未考虑camera2. 文 ...

  4. MTK Android Driver :Camera

    MTK Android Driver :camera 1.相关代码位置: mediatek\config\XXXX(红色字为具体的项目名) 文件:ProjectConfig.mk CUSTOM_KER ...

  5. Android App兼容android10.0系统需要修改那些东西,看这个就够了

    1.加权限 <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/> ...

  6. Android最新相机(Camera)拍照、拍视频全面总结

    介绍 利用系统相机 调用系统相机拍照 获取小图标 获取全尺寸图片 添加到相册 系统相机拍视频 自定义相机 自定义相机拍照 监测设备是否有相机可使用 利用SurfaceView创建拍照时预览界面 拍照并 ...

  7. android 摄像头进程占用,Android 录制视频 Camera占用的解决方法

    Android 录制视频 Camera占用的解决方法 最近需要修改项目中的视频录制功能,原来没怎么理会,可以正常录制. 但是不录制直接返回Camera就会出现占用情况,而且连系统相机都无法正常使用了. ...

  8. USB Camera在android车机上应用前景及初试小结

    USB Camera在android车机上应用前景及初试小结   USB Camera在我们的生活中已经有一些年头了,USB接口的普通摄像头由于使用方便,价格低廉,性能较好,应用在了工作生活的各个方面 ...

  9. [Android编程心得] Camera(OpenCV)自动对焦和触摸对焦的实现

    http://blog.csdn.net/candycat1992/article/details/21617741 实现 以OpenCV的JavaCameraView为例,首先需要定制自己的Came ...

最新文章

  1. [FaceBook]测试、发布和分享小游戏
  2. 借助树的概率dp(期望)+数学-好题-hdu-4035-Maze
  3. 计算机缓存Cache机制理解
  4. 动态栈Stack的C语言实现
  5. 免安装免配置 还免费的Spark 集群 --Databrickes Spark Clould
  6. php5.6怎么安装,php5.6的安装
  7. Android MonkeyRunner
  8. 库克低调访华,3小时郑州行程俨然一位效率大师
  9. Curling 2.0 - POJ 3009
  10. vue实现table评分表
  11. C#学生管理系统——连接Access数据库(登陆功能)
  12. 怎么设置Android Studio的代码字体和代码文字大小
  13. win10 移动文件夹和移动文件
  14. Android 蓝牙对战五子棋项目实现(含人机对战功能)
  15. 计算机网络学习笔记(一) 计算机网络及互联网 Chapter1-Computer NetWorks and the Internet
  16. 计算机中级培训计划,2021年计算机操作员中级培训专项计划.doc
  17. 【转】Windows Error Code(windows错误代码详解)
  18. 收集最新jquery特效与psd常用素材资源
  19. C语言——计算快递费
  20. php判断股票涨停,洗盘如何判断?建仓吸筹如何判断?(图解)

热门文章

  1. iOS开发 - 动画实践系列
  2. Linux内存初始化(四) 创建系统内存地址映射
  3. Tcl与Design Compiler (八)——DC的逻辑综合与优化
  4. 201507之佛山移动实习
  5. Xstream 学习地址
  6. c 结构体 函数 指针
  7. T-SQL笔记7:临时表和表变量
  8. 2005毕业生薪酬预测女超男
  9. 美国政府悬赏1000万美元,获取 DarkSide 勒索团伙线索
  10. 微软推出 Xbox 漏洞奖励计划,最高奖励2万美元