日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android多点触控,图片的拖拽与放大缩小

發布時間:2024/3/13 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android多点触控,图片的拖拽与放大缩小 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//直接復制粘貼就可以使用

public class MainActivity extends AppCompatActivity {private ImageView MyImageView;private float yd;private float xd;//定義三個狀態記錄按壓時是單點還是多點private final int MODE_ONE = 1;private final int MODE_TOW = 2;private final int MODE_NONE = 0;//默認的狀態private int currentMode = MODE_NONE;private double spa;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initView();}Matrix m = new Matrix();Matrix mNew = new Matrix();private void initView() {MyImageView = (ImageView) findViewById(R.id.Image);MyImageView.setOnTouchListener(new View.OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {//選擇到底是 按壓。移動。 抬起,switch (event.getAction() & MotionEvent.ACTION_MASK) {case MotionEvent.ACTION_DOWN:currentMode = MODE_ONE;//一個手指的時候按壓下時(x,y)xd = event.getX();yd = event.getY();// 將圖片的矩陣放入定義的矩陣中()m.set(MyImageView.getImageMatrix());break;case MotionEvent.ACTION_POINTER_DOWN://計算兩手指間的距離(按下的時候有)spa = spacing(event);//只有兩只之間的距離大于20像素的是時候算是多點的觸摸if (spa > 20) {currentMode = MODE_TOW;}break;case MotionEvent.ACTION_MOVE:if (currentMode == MODE_ONE) {//老矩陣放入新的矩陣(啥意思我也不知道跟著寫的)mNew.set(m);//移動后(X,Y)float xm = event.getX();float ym = event.getY();//將移動后的位置設置到另一個矩陣(方法別弄錯)mNew.postTranslate(xm - xd, ym - yd);} else if (currentMode == MODE_TOW) {//移動后的距離double spa2 = spacing(event);PointF pointF = madPinte(event);//將比例設置到矩陣中float v1 = (float) (spa2 / spa);mNew.postScale(v1, v1, pointF.x, pointF.y);}break;case MotionEvent.ACTION_UP:break;}//將圖片的設置成新的矩陣MyImageView.setImageMatrix(mNew);return true;}});}//將計算兩個手指間的距離public double spacing(MotionEvent event) {float x = 0;float y = 0;x = event.getX(0) - event.getX(1);y = event.getY(0) - event.getY(1);return Math.sqrt(x * x + y * y);}//縮放的起點為點見得中點public PointF madPinte(MotionEvent event) {float x1 = event.getX(0);float x2 = event.getX(1);float y1 = event.getY(0);float y2 = event.getY(1);float x = (x1 + x2) / 2;float y = (y1 + y2) / 2;PointF pointF = new PointF(x, y);return pointF;}}

總結

以上是生活随笔為你收集整理的android多点触控,图片的拖拽与放大缩小的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 俺去久久| 寂寞人妻瑜伽被教练日 | 男女在线观看 | 色婷婷午夜 | 亚洲精品久久久久久宅男 | 一级黄色在线视频 | 东方成人av在线 | 日韩视频在线免费播放 | www.色多多 | 精品国产97 | 蜜桃一二三区 | 国产av无码专区亚洲av | 中日韩精品视频在线观看 | 成人免费自拍视频 | 在线日韩免费 | 丝袜人妻一区二区三区 | 中文字幕人成人乱码亚洲电影 | 青娱乐国产 | 中文字幕免费一区 | 国内精品视频在线 | 狼干综合| 熟女国产精品一区二区三 | 狠狠干狠狠干狠狠干 | 艹久久| 91精品啪在线观看国产线免费 | 日韩丝袜一区 | 91福利在线观看 | 岛国免费av| 草草影院在线免费观看 | 亚洲欧美一区二区三区情侣bbw | 欧美色视频在线 | 日本三级不卡 | 咪咪色在线视频 | 久久精品免费在线 | 国产精品久线在线观看 | 国产精品四虎 | 九九精品视频在线观看 | 手机在线观看av片 | 天天色天天干天天色 | 黄色av播放 | 精品乱码一区内射人妻无码 | www.久久精品视频 | 亚洲综合图片网 | 91视频区 | 爽爽淫人 | 亚洲av无码一区二区乱孑伦as | 中文字幕在线观看视频一区 | 免费精品在线 | 久久精品一区二区三区四区 | 国产精品黄色av | 激情全身裸吻胸 | 狠狠一区二区 | 一区二区三区久久久久 | 亚洲国产视频在线观看 | 91手机在线| 日本黄色大片网站 | 天堂在线观看av | 欧美一级性视频 | 在线电影一区二区三区 | 日韩经典第一页 | 激情九月婷婷 | 久久久久久av无码免费网站下载 | 人妻少妇偷人精品久久性色 | 黑人导航 | 91精品国产综合久久久蜜臀 | 亚洲午夜精品一区二区三区他趣 | 婷婷视频一区 | 国产色图片 | 日本黄色xxxxx | 日本精品久久 | 国产福利久久 | 激情内射亚洲一区二区三区爱妻 | 丁香婷婷成人 | 日本a v在线播放 | 亚洲成人av一区 | 亚洲天堂av电影 | 亚洲女同视频 | 懂色av中文一区二区三区天美 | v天堂中文在线 | 国产1区| 精品黑人一区二区三区 | 人人插人人看 | 男男啪啪无遮挡 | 91制服诱惑 | 亚洲福利视频一区 | av小说在线 | 久久久久97国产 | 国产无精乱码一区二区三区 | 福利网址在线 | 乱人伦xxxx国语对白 | 神马伦理视频 | 精品国产伦一区二区三区 | 亚洲 欧美 另类 综合 偷拍 | 国产拍拍拍拍拍拍拍拍拍拍拍拍拍 | 亚洲色图网友自拍 | 成人午夜网 | 在线一区二区三区四区五区 | 午夜精品久久久久久久久久 | 国产精品视频一区二区在线观看 |