精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

AIR Android:放大與縮小手勢

移動開發 Android
處理用戶交互,本模塊主要介紹了多點觸摸相關功能的用法,包括觸摸和手勢。處理用戶交互是AIR Android開發的基礎部分,只有設計合理、用戶操作符合邏輯的交互,才能增強程序的用戶體驗。因此,熟練掌握常見的交互手法至關重要。本文為大家介紹放大與縮小手勢。

放大與縮小手勢(1)

放大與縮小手勢對應TransformGestureEvent. GESTURE_ZOOM事件類型,使用時要求兩個手指觸摸屏幕,同時向外或向內做放縮動作,如圖3-2所示。

 
圖3-2 放縮手勢

放縮手勢操作起來簡單且直觀,在觸摸屏設備上的應用范圍很廣,比如瀏覽網頁時控制頁面上的字體大小,查看地圖時控制地圖的縮放級別等。

下面的實例程序GestureZoom演示了如何使用ZOOM手勢來控制圖片的放縮。對loader對象添加手勢監聽器,事件響應函數根據手勢動作,實現放大或縮小加載的圖片。主程序Main.as的代碼如下:

 

  1. package  
  2. {  
  3. import flash.display.Loader;  
  4. import flash.display.Sprite;   
  5. import flash.events.Event;  
  6. import flash.events.TransformGestureEvent;  
  7. import flash.geom.Point;  
  8. import flash.net.URLRequest;  
  9.    
  10. public class Main extends AppBase  
  11. {  
  12. private var loader:Loader;  
  13.    
  14.  override protected function init():void  
  15.  {  
  16.   //使用Loader對象加載圖片  
  17.   loader = new Loader();  
  18.   loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);  
  19.   addChild(loader);  
  20.   //加載目錄下的圖片  
  21.   loader.load( new URLRequest("dog.jpg") );  
  22.  }    
  23.  //處理加載事件  
  24.  private function onLoadComplete(e:Event):void  
  25.  {  
  26.   loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onLoadComplete);  
  27.  //判斷設備是否支持手勢事件  
  28.  if ( Multitouch.supportsGestureEvents )  
  29.  {  
  30.  //對loader對象添加手勢事件監聽器  
  31.  loader.addEventListener(TransformGestureEvent.GESTURE_ZOOM, onZoom);  
  32.  }  
  33.  }  
  34.  //響應放縮手勢  
  35.  private function onZoom(e:TransformGestureEvent):void  
  36.  {  
  37.   //記錄下手勢作用點的位置,采用loader對象中的本地坐標  
  38.   var p:Point = new Point( e.localX, e.localY );  
  39.   //將坐標轉換為父級容器的本地坐標  
  40.   var parent_p:Point = this.globalToLocal(loader.localToGlobal(p));  
  41.   //對loader對象做放縮處理  
  42.   loader.scaleX *= e.scaleX;  
  43.   loader.scaleY *= e.scaleY;  
  44.   //loader對象縮放后,p點在loader對象中的坐標沒有變,但在父級容器中的坐標已發生變化,因此要//重新計算  
  45.   var parent_p2:Point = this.globalToLocal(loader.localToGlobal(p));  
  46.   //移動loader,使得點p在父級容器的坐標保持不變  
  47.   loader.x += (parent_p.x - parent_p2.x);  
  48.   loader.y += (parent_p.y - parent_p2.y);  
  49.  }  

 

在本例中,使用Loader對象加載程序目錄下的圖片。加載完成后,對loader對象添加手勢事件監聽器,代碼如下:

  1. if ( Multitouch.supportsGestureEvents )  
  2. {  
  3.  loader.addEventListener(TransformGestureEvent.GESTURE_ZOOM, onZoom);  
  4. }

3.3.1 放大與縮小手勢(2)

由于Multitouch類的inputMode屬性默認為處理手勢事件,因此無需更改交互模式即可處理手勢事件。使用手勢事件之前,對Multitouch類的supportsGestureEvents屬性做判斷是一個好習慣。事實上,僅僅做這一個判斷并不能確保設備就一定會支持所有的手勢。要做到萬無一失,還需要檢查Multitouch的supportedGestures屬性,檢查的過程如下:

  1. var index:int = -1;  
  2. if ( Multitouch.supportedGestures != null )  
  3. {  
  4. index = Multitouch.supportedGestures.indexOf(TransformGestureEvent.GESTURE_ZOOM);  
  5. }  
  6. if(Multitouch.supportsGestureEvents && index != -1 )  
  7. {  
  8. //添加其他代碼  

supportedGestures是一個Vector類型的數組,包含了設備支持的所有手勢類型。每個元素代表一個事件類型,如果設備任何一個手勢都不支持,supportedGestures的值為null。因此,要檢測設備是否支持某個手勢,可以使用Vector的indexOf方法進行查找,確保代碼在設備上能夠正確運行。

處理GESTURE_ZOOM 事件時,使用TransformGestureEvent 對象的scaleX與scaleY,即可分別獲取水平方向與垂直方向的縮放值。如果手指向外滑動,表示放大,對應的scaleX與scaleY值大于1,反之小于1。因此,用以下兩行代碼就可以實現放縮控制:

  1. loader.scaleX *= e.scaleX;  
  2. loader.scaleY *= e.scaleY; 

如果只是簡單地對loader對象做放縮處理,會帶來一個問題,那就是每次都是以loader的原點為中心點進行縮放。而符合邏輯的做法,應該是以手勢動作的作用點為中心進行縮放。也就是說,要將手勢動作的作用點設置為loader對象的注冊點。雖然ActionScript并沒有提供修改可視元件注冊點的功能,但可以模擬這個行為。整個過程并不難,關鍵在于坐標轉換,步驟如下:

步驟1 記錄手勢作用點在loader對象中的本地坐標,記為點p,它將是新的“注冊點”。

步驟2 以loader對象的父級容器為參照物,計算出點p在父級容器中的本地坐標,記為點parent_p。

步驟3 對loader對象進行縮放。

步驟4 計算縮放后點p在父級容器中的本地坐標,記為點parent_p2。

步驟5 移動loader對象的坐標,讓點p在父級容器中的坐標保持不變。

第5步操作的原理是:點p是loader對象的本地坐標,因此對loader對象進行縮放并不影響點p的值,但點p相對父級容器而言位置發生了變化,所以,根據縮放前后點p在父級容器中的位移,更改loader對象的坐標,就能夠讓點p在父級容器的坐標保持不變,從而達到了更改loader對象注冊點的目的。起決定性作用的兩行代碼如下:

  1. loader.x += (parent_p.x - parent_p2.x);  
  2. loader.y += (parent_p.y - parent_p2.y);

請注意,程序GestureZoom的屏幕朝向設置為橫屏模式,在程序描述文件中對應的設置項如下:

  1. <aspectRatio>landscape</aspectRatio> 

到這里,一個簡單的圖片放大鏡就完工了。

注意 程序中使用的圖片放在bin目錄中,和其他文件一起被包含在APK文件中,與主SWF文件位于同一目錄結構,因此使用相對路徑就可以直接加載。

責任編輯:閆佳明 來源: book.51cto.com
相關推薦

2013-05-14 11:18:24

AIR AndroidSwipe手勢

2013-05-14 11:16:26

AIR Android旋轉手勢

2017-05-03 16:36:32

Android圖片動畫

2013-05-03 15:17:59

Android開發Android SDK

2011-06-16 10:25:29

AndroidAIR

2013-05-14 11:08:23

AIR Android觸摸事件鼠標事件

2013-05-14 09:57:37

2013-05-14 10:39:27

AIR Android打包APK文件

2013-05-14 10:27:46

Android開發設置程序屬性

2013-05-14 10:37:10

AIR Android設置訪問權限

2013-05-14 10:56:45

AIR Android多點觸摸

2009-05-30 09:33:10

Palm PreWebOS移動OS

2013-05-14 09:50:44

Android開發Flash Build

2013-05-14 10:10:28

Android開發棋子類Grid

2013-05-14 10:05:10

Android開發游戲設計

2013-05-14 11:04:58

AIR AndroidTouchEvent類

2013-05-14 11:01:34

AIR AndroidTouchEvent類

2012-03-09 13:26:53

2011-08-19 17:02:46

iPhone開發

2013-05-14 10:16:35

Android開發主類Main
點贊
收藏

51CTO技術棧公眾號

日韩欧美综合在线视频| 成人激情综合网站| 久久精品国产一区二区三区| 一个人看的视频www| gogo高清在线播放免费| 久久久久久久综合日本| 成人有码在线播放| 日韩精品1区2区| 久久福利综合| 亚洲国内精品视频| 三级一区二区三区| 性爽视频在线| 一区二区三区在线高清| 日本视频一区二区不卡| 后入内射欧美99二区视频| 日欧美一区二区| 欧美另类在线观看| 欧美老女人性生活视频| 国产一区丝袜| 欧美一区二区三区在线观看| 亚洲自偷自拍熟女另类| 成人免费网址| 国产精品热久久久久夜色精品三区 | 国产美女精品久久久| 久久精品99北条麻妃| 亚洲香蕉网站| 爱福利视频一区| 亚洲码无人客一区二区三区| 林ゆな中文字幕一区二区| 5566中文字幕一区二区电影| av五月天在线| 吞精囗交69激情欧美| 亚洲国产精品影院| 300部国产真实乱| 欧美尤物美女在线| 国产日韩欧美电影| 欧美久久久久久| 日韩一区免费视频| 国产精品亚洲第一| 成人精品在线观看| 亚洲熟妇无码久久精品| 日韩专区欧美专区| 日本欧美中文字幕| 欧美一区二区三区四| 亚洲高清免费| 国语自产在线不卡| 国产午夜小视频| 亚洲国产一区二区三区a毛片 | 亚洲精品videossex少妇| 亚洲精品国产久| 亚洲日日夜夜| 91精品免费观看| 成年网站免费在线观看| 日本免费一区二区三区等视频| 欧美性视频一区二区三区| 妞干网在线免费视频| 亚洲精品动漫| 欧美午夜一区二区| 狠狠躁狠狠躁视频专区| 久久精品97| 在线播放中文一区| 国产在线观看中文字幕| 日韩在线观看视频一区二区三区| 台湾成人免费视频| 色综合色狠狠综合色| 国产aaa一级片| 日本综合字幕| 欧美日韩成人在线| 夜夜爽久久精品91| aaa国产精品视频| 亚洲国产精品人久久电影| 国产毛片毛片毛片毛片毛片毛片| 日韩欧美影院| 在线视频免费一区二区| 国产精品免费在线视频| 欧美国产三级| 97在线观看视频国产| 国产精品免费精品一区| 日本va欧美va欧美va精品| 成人观看高清在线观看免费| www.久久久久久| 91在线视频免费观看| 日本精品一区二区三区视频| 黄色视屏免费在线观看| 亚洲小说欧美激情另类| 国产1区2区在线| 色成人综合网| 亚洲成人精品久久久| 亚洲色成人网站www永久四虎| 国产精品99久久精品| 欧美激情视频一区| 制服丝袜在线一区| 成人国产精品免费观看动漫 | 久久网站免费观看| 欧美高清第一页| 在线视频精品免费| 成人午夜精品一区二区三区| 天天爽天天狠久久久| 欧洲精品二区| 欧美色综合网站| 亚洲av成人片无码| 欧美成人自拍| 欧美亚洲另类视频| 精品人妻一区二区三区三区四区 | 玖玖精品在线| 日韩精品欧美激情| 国产精品白丝喷水在线观看| 国产日韩亚洲| 97se国产在线视频| 超碰免费在线| 欧美性猛交xxxx富婆弯腰| 91亚洲一区二区| 欧美理论在线播放| 97在线视频精品| 精品人妻无码一区二区| 国产日韩高清在线| 久久久999视频| 一区二区三区四区视频免费观看 | 韩日毛片在线观看| 91精品国产欧美一区二区18| 亚洲色成人网站www永久四虎| 伊人久久久大香线蕉综合直播| 国产欧美日韩免费| 欧美视频综合| 精品国产1区2区| 少妇熟女视频一区二区三区| 天天影视天天精品| 国产精品免费视频xxxx| 免费在线观看污视频| 亚洲成人一区二区在线观看| a级大片免费看| 精品精品99| 日韩美女免费视频| 欧美日韩影视| 懂色aⅴ精品一区二区三区蜜月| 中国男女全黄大片| 午夜亚洲福利| 亚洲一区二区三区xxx视频| 天堂аⅴ在线地址8| 欧美在线|欧美| 最近中文字幕免费| 天堂久久久久va久久久久| 老牛影视免费一区二区| 国产精品蜜芽在线观看| 日韩av网站电影| 国产成人精品网| 91年精品国产| 午夜精品久久久内射近拍高清| 美女一区2区| 国产69久久精品成人看| 天堂资源中文在线| 狠狠色噜噜狠狠狠狠97| 特大黑人巨人吊xxxx| 一本综合精品| 日韩av电影免费在线观看| 国产日韩另类视频一区| 在线播放精品一区二区三区| 中文字幕在线观看欧美| 中文字幕在线播放不卡一区| 亚洲一二三av| 欧美区国产区| 国产精品免费区二区三区观看| sqte在线播放| 亚洲男人av电影| www.久久网| 综合激情成人伊人| 精品久久久久久无码人妻| 欧美日韩国产免费观看| 国内精品久久国产| 偷拍中文亚洲欧美动漫| 久久精品国产一区二区电影| 亚洲国产精品suv| 欧美日韩在线影院| 美国美女黄色片| 国产一区视频在线看| 无码人妻少妇伦在线电影| 亚洲伊人春色| 国产一区欧美二区三区| 欧美14一18处毛片| 精品成a人在线观看| 欧美激情亚洲综合| 亚洲国产精品99久久久久久久久| 波多野结衣中文字幕在线播放| 亚洲美女黄网| 亚洲成人蜜桃| 超碰在线成人| 国产精品美女免费| 免费污视频在线观看| 国产亚洲精品美女| 国产黄色高清视频| 色视频一区二区| 69av.com| 国产丝袜在线精品| 亚洲妇女无套内射精| 丝袜美腿亚洲色图| 欧美一区二区视频在线播放| 欧美男男gaytwinkfreevideos| 91视频免费网站| 625成人欧美午夜电影| 日韩在线视频播放| 少妇精品高潮欲妇又嫩中文字幕 | 亚洲成人1区2区| 日本污视频网站| 99精品欧美一区二区三区综合在线| 成人免费在线观看视频网站| 国产欧美日韩一级| 穿情趣内衣被c到高潮视频| 怕怕欧美视频免费大全| 成人区精品一区二区| 国产在视频一区二区三区吞精| 97在线观看视频国产| 亚洲制服国产| 日韩一区二区福利| 国产永久免费高清在线观看 | 3d成人动漫在线| 亚洲精品美女久久久久| 国产aⅴ爽av久久久久成人| 欧洲一区在线观看| 亚洲午夜18毛片在线看| 亚洲成人久久影院| 国产女人18水真多毛片18精品| 国产日韩视频一区二区三区| 亚洲av成人片色在线观看高潮| 国产精品一区二区三区99| 爆乳熟妇一区二区三区霸乳| 99精品视频免费观看视频| 欧美交换配乱吟粗大25p| 999精品色在线播放| 日韩国产美国| 国产亚洲第一伦理第一区| 精品91免费| 卡通动漫精品一区二区三区| 国产成人亚洲欧美| 亚洲一区网址| 亚洲wwwav| 精品午夜视频| 91亚洲永久免费精品| 天天综合91| 成人福利网站在线观看| 91亚洲精品在看在线观看高清| 国产精品影片在线观看| 国产精品美女午夜爽爽| 国产日韩欧美在线观看| 99er精品视频| 91麻豆国产语对白在线观看| 99精品女人在线观看免费视频| 国产日韩精品综合网站| 亚洲精品成人一区| 亚洲精品日产aⅴ| 欧美视频精品全部免费观看| 114国产精品久久免费观看| 国产精品**亚洲精品| 91免费看蜜桃| 久久综合社区| 欧美日韩精品久久| 国产不卡一二三区| 日韩福利二区| 天天综合一区| 国产精品三级一区二区| 精品白丝av| 青青草原成人网| 日产欧产美韩系列久久99| 另类小说第一页| 精品亚洲国内自在自线福利| 国产传媒免费观看| 成人免费的视频| 在线观看日本中文字幕| 国产精品乱人伦中文| 日韩福利小视频| 亚洲一区二区三区自拍| 亚洲另类在线观看| 欧美日韩另类一区| 性中国xxx极品hd| 日韩精品中文字幕久久臀| 国产福利电影在线| 久久中文字幕在线| 嗯~啊~轻一点视频日本在线观看| 日韩av免费在线观看| 日本久久久久| 国产一区在线免费观看| 国内精品久久久久久久影视简单| 一本一生久久a久久精品综合蜜| 欧美精品午夜| 色哟哟精品视频| 成人精品视频一区| www久久久久久久| 亚洲一卡二卡三卡四卡| 亚洲午夜在线播放| 精品sm在线观看| 最新国产在线观看| 97久久精品国产| 欧洲亚洲精品久久久久| 草莓视频一区| 日韩精品一区二区久久| 国产资源在线免费观看| 日本不卡一区二区三区高清视频| 中国男女全黄大片| 国产精品久久久久aaaa樱花| 欧美精品亚洲精品日韩精品| 欧美日韩精品一区视频| 国模私拍视频在线| 国产午夜精品美女视频明星a级| 黄页网站大全在线免费观看| 国产精品免费在线免费| 国产主播性色av福利精品一区| 亚洲看片网站| 模特精品在线| 欧美熟妇精品一区二区蜜桃视频| 国产精品国产a| 国产亚洲欧美在线精品| 精品国产电影一区二区| 巨大荫蒂视频欧美另类大| 日本久久精品视频| 99国产精品久久一区二区三区| 一本久久a久久精品vr综合| 亚洲在线国产日韩欧美| 国产精品偷伦视频免费观看了| 国产精品久久久久永久免费观看 | 91福利在线免费| 91在线视频一区| 青青草国产免费一区二区下载| 日韩av在线第一页| 丰满亚洲少妇av| 欧美成人手机视频| 欧美日韩国产经典色站一区二区三区| 三级国产在线观看| 久久久久久久久亚洲| 日本一区二区三区视频在线看| 一区二区三区的久久的视频| 日韩精品亚洲专区| 亚洲精品国产一区黑色丝袜| 激情成人中文字幕| 天堂中文在线观看视频| 久久久久久91| 国产精品超碰| 成人免费在线网| k8久久久一区二区三区 | 久久波多野结衣| 亚洲国产1区| 亚洲av成人精品一区二区三区| 亚洲一卡二卡三卡四卡| 亚洲第一视频在线播放| 欧美国产视频日韩| 色悠久久久久综合先锋影音下载| 成人短视频在线看| 国产乱码精品一区二区三区忘忧草 | 欧洲成人在线视频| 中国av一区| 欧美精品性生活| 国产精品久久久久aaaa樱花| 夜夜爽8888| www.日韩不卡电影av| 成人污污视频| www.亚洲成人网| 99re视频精品| 亚洲大尺度在线观看| 中日韩美女免费视频网址在线观看 | 国产精品蜜臀| 精品一区久久久| 肉丝袜脚交视频一区二区| 99国产精品免费| 91精品久久久久久久91蜜桃 | 午夜精品久久久久久| 四虎影视在线观看2413| 国产999精品| 性欧美69xoxoxoxo| 久久久精品人妻一区二区三区| 亚洲精品老司机| 午夜在线视频免费| 欧洲精品在线视频| 国产91久久精品一区二区| www.亚洲高清| 亚洲一级电影视频| 国产视频网站在线| 91嫩草在线| 亚欧美中日韩视频| 精品国产国产综合精品| 精品黑人一区二区三区久久| 国产日韩电影| 日韩国产精品毛片| 久久一区二区三区国产精品| 中文字幕在线日亚洲9| 欧美国产第二页| 国产亚洲一区| 亚洲精品成人无码毛片| 色婷婷香蕉在线一区二区| sm国产在线调教视频| 久久狠狠久久综合桃花| 精品影视av免费| 亚洲久久在线观看| 久久久999国产精品| 妖精视频一区二区三区免费观看| 女人高潮一级片| 欧美性猛交xxx| 国内在线免费视频| 亚洲欧洲在线一区| 97se亚洲国产综合自在线观| 国产精品久久久久毛片| 51精品在线观看| 亚洲国产一成人久久精品|