Android实现图片双指缩放
本文实例为大家分享了Android实现图片双指缩放的具体代码,供大家参考,具体内容如下
展示
源码
using Android.App; using Android.OS; using Android.Util; using Android.Views; using Android.Widget; namespace android_by_csharp { [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)] public class MainActivity : Activity { protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.main); var avatar = FindViewById<ImageView>(Resource.Id.avatar); var distance = 0; if (avatar != null) avatar.Touch += (sender, args) => { if (args.Event == null) return; // 双指按下 if ((args.Event.Action & MotionEventActions.Pointer2Down) == MotionEventActions.Pointer2Down) distance = (int)Distance(args.Event); // 双指抬起 else if ((args.Event.Action & MotionEventActions.Pointer2Up) == MotionEventActions.Pointer2Up) Toast.MakeText(this, "双指抬起", ToastLength.Short)?.Show(); // 移动,双指 if ((args.Event.Action & MotionEventActions.Move) == 0 || args.Event.PointerCount != 2) return; var moveDistance = Distance(args.Event); avatar.ScaleY = avatar.ScaleX *= moveDistance / distance; if (moveDistance / distance < 1) Toast.MakeText(this, "缩小", ToastLength.Short)?.Show(); else if (moveDistance / distance > 1) Toast.MakeText(this, "放大", ToastLength.Short)?.Show(); }; } // 计算两个触摸点之间的距离 private static float Distance(MotionEvent motionEvent) { var x = motionEvent.GetX(0) - motionEvent.GetX(1); var y = motionEvent.GetY(0) - motionEvent.GetY(1); return FloatMath.Sqrt(x * x + y * y); } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Android实现ImageView图片缩放和拖动
今天我们来编写一个缩放效果的ImageView ,网上有很多人都讲了这些.但有许多人都直接使用了库文件, 那么我们今天做的是直接上代码编写一个拖动和缩放的ImageView,具体看效果图 那么简单了分析一下.在手机上缩放图片和拖动要用到什么?手指对不对 那么控件上什么事件和手机有关.View.OnTouchListener 对不对. ok,那么先新建一个Class ··· public class BaseDragZoomImageView extends ImageView implement
-
Android 图片缩放与旋转的实现详解
本文使用Matrix实现Android实现图片缩放与旋转.示例代码如下: 复制代码 代码如下: package com.android.matrix;import android.app.Activity;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Matrix;import android.graphics.drawable.BitmapDrawable
-
Android 自定义imageview实现图片缩放实例详解
Android 自定义imageview实现图片缩放实例详解 觉得这个自定义的imageview很好用 性能不错 所以拿出来分享给大家 因为不会做gif图 所以项目效果 就不好贴出来了 把代码贴出来 1.项目结构图 2.Compat.class package com.suo.image; import android.os.Build.VERSION; import android.os.Build.VERSION_CODES; import android.view.View; pu
-
Android点击WebView实现图片缩放及滑动浏览效果
最近做的项目有一个要求,就是在WebView中显示的html,需要在点击其中的图片时进行放大,并进行缩放和滑动 浏览,我第一想到的是这是和js进行交互的事情,但是怎么获取html中图片的url,并保存起来进行显示,我就不知道 了,所以去查了下资料,最后找到了解决的办法: 博客地址:Android WebView中图片浏览及缩放效果 首先说一下处理这个要求的思路,首先我们要获取到html中的所有图片的url,并保存到集合中,当点击图片时,跳转 一个Activity用ViewPager进行显示,这样
-
Android实现手指触控图片缩放功能
这次记录的是实现Android图片两手触控缩放的功能. 编译环境:eclipse Android版本4.0 创建工程过程略 实现图片在页面两手触控缩放 原理图---图片缩放 两手拉开图片变大,两手合拢图片缩小,根据两手的移动距离来判断图片放大和缩小的倍数,两手的移动距离计算方法如下: 两手不管是正着还是斜着拉伸,用勾股定理都能计算出两点的距离. 除此之外,还要确定两个手位置的中心点,图片以这个中心点为参照进行放大和缩小: 计算两点之间的中心点的方法是,点1距原点位置X1(或者Y1)加上点2距原点
-
Android控件实现图片缩放功能
1 简介 先来一张效果图 TIM图片.gif 上图中灰色的一块是ImageView控件,ImageView中的图片进行左右上下移动,以及双指缩放. 对于android控件的缩放移动,点这里----android控件的缩放,移动 2 使用步骤 布局layout <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.
-
android 多点触摸图片缩放的具体实现方法
布局: 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/relativeLayout1" android:layout_width="fill_parent
-
Android 图片缩放实例详解
本文实现Android中的图片的缩放效果 首先设计布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_par
-
Android应用中实现手势控制图片缩放的完全攻略
一.概述 现在app中,图片预览功能肯定是少不了的,用户基本已经形成条件反射,看到小图,点击看大图,看到大图两个手指开始进行放大,放大后,开始移动到指定部位~~~ 我相信看图的整个步骤,大家或者说用户应该不希望被打断把~~~"我擦,竟然不能放大,什么玩意,卸了~~" , "我擦,竟然不能移动,留有何用,卸了~~". 哈~所以对于图片的预览,一来,我们要让用户爽:二来,我们作为开发者,也得知道如何实现~~~ 想要做到图片支持多点触控,自由的进行缩放.平移,需要了解几个
-
Android实现图片双指缩放
本文实例为大家分享了Android实现图片双指缩放的具体代码,供大家参考,具体内容如下 展示 源码 using Android.App; using Android.OS; using Android.Util; using Android.Views; using Android.Widget; namespace android_by_csharp { [Activity(Label = "@string/app_name", Theme = "@style/AppThe
-
Android 背景图片的缩放实现
Android 背景图片的缩放 ONE Goal ,ONE Passion ! 我们看到一些效果,控件中的背景图片会慢慢变大,但是控件不会随着图片的放大而变大.效果如下: 分析: 想让图片变大,而且控件本身大小不能改变,那么就要改变图片自身大小,而不能改变控件大小. 实现原理: 1,首先拿到我们要放大的图片bitmap. 2,使用Bitmap.createBitmap().创建一个bitmap的副本. 3,使用matrix去改变图片副本本身大小 4,使用ValueAnimator去根据变化率将副
-
Android 在viewPager中双指缩放图片双击缩放图片单指拖拽图片的实现思路
我们就把这个问题叫做图片查看器吧,它的主要功能有: 1.双击缩放图片. 2. 双指缩放图片. 3.单指拖拽图片. 为此这个图片查看器需要考虑以下的技术点: 一.双击缩放图片: 1.如果图片高度比屏幕的高度小得多,那么就将图片放大到高度与屏幕高度相等,否则就放大一个特定的倍数. 2.如何判断是否到达这个倍数来停止缩放. 3.判断完且停止放大后,图片可能已经超出了这个倍数需要的大小,如何回归到我们的目标大小. 4.判断完且停止缩小后,图片宽度可能已经小于屏幕宽度,在两边留下了空白,如何重置为原来的大
-
android调用原生图片裁剪后图片尺寸缩放的解决方法
在安卓开发中,如果对拍照后的图片进行图片裁剪,如果是调用系统的裁剪,如下: /* * 裁剪图片 */ private void cropPhoto() { Intent intent = new Intent("com.android.camera.action.CROP"); Uri uri = Uri.parse("file://" + picSavePath); intent.setDataAndType(uri, "image/*");
-
基于Android 实现图片平移、缩放、旋转同时进行
前言 之前因为项目需求,其中使用到了图片的单击显示取消,图片平移缩放功能,昨天突然想再加上图片的旋转功能,在网上看了很多相关的例子,可是没看到能同时实现我想要的功能的. 需求: (1)图片平移.缩放.旋转等一系列操作后,图片需要自动居中显示. (2)图片旋转后选自动水平显示或者垂直显示 (3)图片在放大缩小的同时都能旋转 Demo实现部分效果截图 Demo主要代码 Java MainActivity.java package com.practice.noyet.rotatezoomimagev
-
微信小程序movable view移动图片和双指缩放实例代码
movable-area是微信小程序的新组件,可以用来移动视图区域movable-view.移动方向可选择任何.垂直和平行.可移动区域里包含其他文本.图片.按钮等组件.可移动区域可绑定touchend等事件.movable-view的参数可调整动画效果. 先从movable-view开始说起吧. movable-view是小程序自定义的组件.其描述为:"可移动的视图容器,在页面中可以拖拽滑动". 官方文档地址: https://mp.weixin.qq.com/debug/wxadoc
-
Android手势控制实现缩放、移动图片
本文实例为大家分享了Android手势控制实现缩放.移动图片的方法,供大家参考,具体内容如下 新建一个触摸监听器类 package com.liyong.btprinter; import android.graphics.Matrix; import android.graphics.PointF; import android.util.FloatMath; import android.view.MotionEvent; import android.view.View; import a
-
Android实现通过手势控制图片大小缩放的方法
本文实例讲述了Android实现通过手势控制图片大小缩放的方法.分享给大家供大家参考,具体如下: 该程序实现的是通过手势来缩放图片,从左向右挥动图片时图片被放大,从右向左挥动图片时图片被缩小,挥动速度越快,缩放比越大.程序思路如下:在界面中定义一个ImageView来显示图片,使用一个GestureDetector来检测用户的手势,并根据用户的手势在横向的速度来缩放图片. 在介绍这个实例前,先介绍一下Android中处理手势触摸事件的大概框架. 一.添加语句实现OnGestureListener
-
Android通过自定义ImageView控件实现图片的缩放和拖动的实现代码
概述:通过自定义ImageView控件,在xml布局里面调用自定的组件实现图片的缩放. /** * 自定义的ImageView控制,可对图片进行多点触控缩放和拖动 * * @author qiuwanyong */ public class MyImageView extends ImageView { /** * 初始化状态常量 */ public static final int STATUS_INIT = 1; /** * 图片放大状态常量 */ public static final i
-
Android多点触控技术实战 针对图片自由缩放和移动
在上一篇文章中我带着大家一起实现了Android瀑布流照片墙的效果,虽然这种效果很炫很酷,但其实还只能算是一个半成品,因为照片墙中所有的图片都是只能看不能点的.因此本篇文章中,我们就来对这一功能进行完善,加入点击图片就能浏览大图的功能,并且在浏览大图的时候还可以通过多点触控的方式对图片进行缩放. 如果你还没有看过 Android瀑布流照片墙实现,体验不规则排列的美感 这篇文章,请尽量先去阅读完再来看本篇文章,因为这次的代码完全是在上次的基础上进行开发的. 那我们现在就开始动手吧,首先打开上次的P
随机推荐
- 用hta实现的远程桌面连接脚本
- 浅析webapp框架AngularUI的demo
- 简单获取键盘的KeyCode
- 第4天:调用样式表
- VBScript:Join 函数一个不太常用,却很有用的函数
- java实现的AES秘钥生成算法示例
- Python网络编程 Python套接字编程
- php跨域cookie共享使用方法
- php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
- 为Python的web框架编写前端模版的教程
- C++ 单例模式的详解及实例
- java 中ArrayList与LinkedList性能比较
- windows中apache 301页面跳转实现方法
- 成员函数的重载、覆盖与隐藏详细解析
- 利用源码编译Android系统的APK和可执行命令的方法
- 解析IP地址与MAC地址
- java JTree JCheckBox树复选框详解
- python类的方法属性与方法属性的动态绑定代码详解
- python操作xlsx文件的包openpyxl实例
- Spring IOC基于注解启动示例详析
其他
- max_element 未定义
- django atomic 幻读
- mybatis 同时删除多张表
- springcloud FeignClient指定异常
- spring gateway 对接口调用频率限制
- vue 使用自定义指令实现弹窗
- componentscan 语法
- linux C中 & 与&&
- python 定时脚本卡死
- netcore 获取配置文件 泛型对象
- dbeaver 在对应数据库建script
- Qt TabWidget 实现多窗体
- 课程设计通讯录管理系统课程设计测试内容
- 批处理 转换图形界面
- Android unity传递纹理
- android Glide图片加载监听
- vmi安装centos8时怎么连接WIFI
- 微信开发者工具怎么实现点击信息跳转页面,点击按钮不跳转
- rust for loop性能
- flutter 今天的开始和结束时间戳