当图片处于浏览时,GestureDetector处于监听状态,双击图片,通过getSelectedView获取当前图片,以双击点缩放图片,缩小状态下,判断图片适应屏幕比例,当比例大于0.5f,设置缩放比例为2.0f,否则,设置图片比例缩放比例为1.0f。调用BasaImageView的zoomTo方法。放大状态下,设置缩放比例为图片适应屏幕比例,调用zoomTo方法。
代码如下:
public boolean onDoubleTap(MotionEvent e) {
            View view = MyGallery.this.getSelectedView();
            float originalScl = imageView.getScale();
            float scl = 1.0f / originalScl;
            if (view instanceof BasalImageView) {
                imageView = (BasalImageView) view;
                if (imageView.getScale() > imageView.getScaleRate()) {
imageView.zoomTo(imageView.getScaleRate(), GalleryViewActivity.screenWidth / 2, GalleryViewActivity.screenHeight / 2, 200f);
                }else {
                    if (imageView.getScaleRate() > 0.5f) {
                        imageView.zoomTo(2.0f,  e.getX(), e.getY());
                    }else {
                        imageView.zoomTo(originalScl * scl,  e.getX(), e.getY());
                    }                    
                }    
            }
            return true;
        }
    }
         
    图 3自适应屏幕尺寸和双击放大
(3)    双指滑动缩放图片
两根手指落下屏幕上之间的距离为基础值,滑动手指,滑动后手指之间的距离除以开始落下的距离的系数为缩放比例,正值为放大图片,负值为缩小图片。调用zoomTo方法。图片缩放参考点为落下的两根手指点对应的中间点。缩放后,滑动后的距离值赋给基础值,以此类推,当手指再次滑动时,将产生新的滑动后的手指间距,除以新的基础值,得到缩放比例。
代码如下:
public boolean onTouch(View v, MotionEvent event) {
                View view = MyGallery.this.getSelectedView();
                if (view instanceof BasalImageView) {
                    imageView = (BasalImageView) view;

                    if (event.getAction() == MotionEvent.ACTION_DOWN) {
                        baseValue = 0;
                        originalScale = imageView.getScale();
上一篇:超市库存系统的国内外研究现状和发展趋势
下一篇:JSP+mysql药品销售及管理系统设计与实现+用例图

考证平台静态网页设计与制作

搭建Linux桌面环境的影音平台【1261字】

抖音短视频平台视频推荐模式研究【2528字】

J2ME平台的SOAP协议研究与應用【2420字】

构建下一代网络的开放业...

Linux嵌入式系统开发平台选型探讨【2295字】

Android课程同步练习系统的设计

医院财务风险因素分析及管理措施【2367字】

C#学校科研管理系统的设计

10万元能开儿童乐园吗,我...

神经外科重症监护病房患...

国内外图像分割技术研究现状

公寓空调设计任务书

AT89C52单片机的超声波测距...

中国学术生态细节考察《...

承德市事业单位档案管理...

志愿者活动的调查问卷表