天天看點

【Android開發】手指觸控圖檔縮放功能

這次記錄的是實作android圖檔兩手觸控縮放的功能。

編譯環境:eclipse

android版本4.0

建立工程過程略

實作圖檔在頁面兩手觸控縮放

原理圖---圖檔縮放

【Android開發】手指觸控圖檔縮放功能

兩手拉開圖檔變大,兩手合攏圖檔縮小,根據兩手的移動距離來判斷圖檔放大和縮小的倍數,兩手的移動距離計算方法如下:

【Android開發】手指觸控圖檔縮放功能

兩手不管是正着還是斜着拉伸,用勾股定理都能計算出兩點的距離。

除此之外,還要确定兩個手位置的中心點,圖檔以這個中心點為參照進行放大和縮小:

【Android開發】手指觸控圖檔縮放功能

計算兩點之間的中心點的方法是,點1距原點位置x1(或者y1)加上點2距原點位置x2(或者y2),和除以2即可:

x0=(x1+x2)/2; y0=(y1+y2)/2;

實作圖檔在頁面内的觸控縮放(還有拖拉功能,是以前寫的)

main.xml:

mainactivity.java:

轉載請注明出處!程式猿之洞:http://blog.csdn.net/acmman

繼續閱讀