精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

琪琪第一精品导航| 欧美va日韩va| 欧美h视频在线观看| www黄色网址| 久久不射2019中文字幕| 日韩中文字幕网| 亚洲成a人无码| 欧美123区| 亚洲国产视频直播| 在线看片第一页欧美| 亚洲另类第一页| 91福利在线尤物| 中文欧美字幕免费| 国产一区再线| 国产日韩欧美一区二区东京热| 亚洲色诱最新| 欧美成人剧情片在线观看| 在线免费观看成年人视频| 国产精品1区| 在线视频欧美精品| 欧美极品欧美精品欧美| 超碰电影在线播放| 国产欧美日韩麻豆91| 国产一区二区三区四区五区在线 | 亚洲色图日韩精品| 久久a爱视频| 91精品国产aⅴ一区二区| 国产又黄又猛视频| 男人天堂视频在线观看| 亚洲综合成人在线视频| 正在播放久久| 阿v免费在线观看| 91亚洲精品久久久蜜桃| 动漫美女被爆操久久久| 国产伦精品一区二区三区四区 | 日本中文字幕观看| 日本综合字幕| 欧美日韩国内自拍| 欧美国产日韩激情| 羞羞视频在线观看免费| 成人免费在线视频观看| 亚洲精品电影在线一区| 福利在线视频导航| 久久精品无码一区二区三区| 九9re精品视频在线观看re6| 国精品人妻无码一区二区三区喝尿| 国产精品自在在线| 91免费在线视频| 97成人在线观看| 美女脱光内衣内裤视频久久影院| 国产不卡精品视男人的天堂| 无码人妻丰满熟妇奶水区码| 久久精品官网| 国产精品电影久久久久电影网| 男人天堂2024| 日韩精品一二三区| 国产美女久久久| 国产有码在线观看| 国精产品一区一区三区mba视频 | 欧美日韩大尺度| 久久精品女人天堂av免费观看| 欧美性猛交99久久久久99按摩| 国产精品免费入口| 日韩经典一区| 欧美日韩高清影院| 91蝌蚪视频在线| 亚洲精品在线国产| 亚洲国产小视频在线观看| 久久国产精品影院| 欧美丝袜激情| 久久夜色精品亚洲噜噜国产mv| 加勒比婷婷色综合久久| 亚洲二区视频| 日韩免费不卡av| 在线免费观看视频网站| 国产在线国偷精品产拍免费yy| 91久久精品一区二区别| 天天操天天操天天操| 久久久久国产精品麻豆| 亚洲三区在线| 污视频免费在线观看| 精品日韩视频在线观看| 999精品网站| 国产精品久久久久久久久久辛辛| 精品福利二区三区| 亚洲精品91在线| 午夜国产欧美理论在线播放| 97婷婷涩涩精品一区| 中文字幕视频一区二区| 国产精品一区二区免费不卡| 久久成人资源| 麻豆网站在线观看| 五月天欧美精品| 一级做a免费视频| 欧美理伦片在线播放| 中文字幕av日韩| 精品少妇久久久| 日韩成人dvd| av色综合网| 1769在线观看| 婷婷一区二区三区| 图片区乱熟图片区亚洲| 亚州精品视频| 欧美激情一区二区三区成人| 真实的国产乱xxxx在线91| 成人一道本在线| 一区一区视频| 性欧美1819sex性高清| 日韩精品一区二区在线观看| 懂色av粉嫩av浪潮av| 99亚洲伊人久久精品影院红桃| 国产欧美日韩亚洲精品| 五月天福利视频| 亚洲激情自拍偷拍| 向日葵污视频在线观看| 天堂综合网久久| 久久久久九九九九| 国产日韩欧美视频在线观看| 欧美极品另类videosde| 大肉大捧一进一出好爽视频| 亚洲经典视频| 久久久www成人免费精品| 天天干,天天干| 99riav一区二区三区| 国产 国语对白 露脸| 免费成人毛片| 一区二区三区四区在线观看视频| 日韩精品在线观看免费| 高清不卡在线观看| 日本xxxxx18| www一区二区三区| 在线看欧美日韩| 丁香社区五月天| 久久免费视频色| 欧美精品99久久| 色综合www| 性色av香蕉一区二区| 亚洲精品无码久久久| 亚洲精品福利视频网站| 国产毛片久久久久久| 国产精品二区不卡| 国产在线观看91精品一区| 久草在现在线| 色av综合在线| 一级肉体全黄裸片| 蜜桃av一区二区| 亚洲精品在线视频观看| 91av一区| 久久色在线播放| 国内精品久久久久久久久久 | 国产一级片免费看| 高清国产一区二区| 被灌满精子的波多野结衣| 国产福利资源一区| 668精品在线视频| 亚洲三区在线播放| 色猫猫国产区一区二在线视频| aa一级黄色片| 日日夜夜精品视频天天综合网| 日韩欧美在线观看强乱免费| 欧美在线一级| 九九久久精品一区| 丰满岳乱妇国产精品一区| 精品国产老师黑色丝袜高跟鞋| 无码人妻aⅴ一区二区三区| 国产视频一区三区| 日本成人看片网址| 永久免费观看精品视频| 欧美成人午夜免费视在线看片| 亚洲卡一卡二卡三| 欧美丝袜第一区| 91成人在线免费视频| 蜜臀av一区二区在线观看| 在线综合视频网站| 51亚洲精品| 91精品国产91久久久久久久久 | 91美女片黄在线| 国产天堂在线播放| 午夜精品视频| 久久亚洲精品欧美| 欧美性生活一级| 久久久久国产一区二区三区| 国产在线播放av| 欧美一区二区三区视频免费播放 | 在线视频综合导航| 日韩影院一区二区| 99久久久无码国产精品| www.99av.com| 欧美视频一区| 日本一区高清在线视频| 成人精品在线| 久久久天堂国产精品女人| 免费在线一级视频| 777久久久精品| 四虎永久在线精品| 国产精品久久久久桃色tv| 亚洲美女高潮久久久| 日本欧美久久久久免费播放网| 国产 欧美 日本| 精品欧美久久| 国产一区二区在线网站| 成人在线精品| 国产精品成人一区| 黄色影院在线看| 最近2019中文免费高清视频观看www99| 丰满人妻一区二区三区免费| 欧美日韩一级黄| 日本道在线观看| 玉足女爽爽91| 国产小视频你懂的| 国产清纯美女被跳蛋高潮一区二区久久w | avtt久久| 国产成人亚洲综合| xxxx另类黑人| 久久最新资源网| 岛国视频免费在线观看| 亚洲国产高清高潮精品美女| 国产成人精品毛片| 欧美性大战久久久| 久久青青草原亚洲av无码麻豆| 一区二区三区免费| 97成人资源站| 日韩一区欧美一区| 国产免费嫩草影院| 久久久99久久精品欧美| 黄页网站在线看| 极品美女销魂一区二区三区免费| 污污视频网站免费观看| 久久国产精品久久w女人spa| 国产精品12345| 在线成人h网| www插插插无码免费视频网站| 希岛爱理一区二区三区| 亚洲一区二区三区精品视频| 精品色999| 亚洲高清视频一区| 欧美色图国产精品| 日韩中文字幕一区| 凹凸成人精品亚洲精品密奴| 日韩福利视频| 九九综合久久| 日本一区二区免费看| 久久99国产精品视频| 欧美日韩一区二| 国产探花一区在线观看| 日本一区免费在线观看| 精品国产精品| 亚洲欧美国产精品桃花| 久久神马影院| 小说区视频区图片区| 亚洲国产不卡| 日韩一区二区高清视频| 韩国久久久久| 久久久久久人妻一区二区三区| 在线成人www免费观看视频| 国产精品无码av在线播放| 一本色道久久综合亚洲精品高清 | 激情五月婷婷综合| 日本美女久久久| 国产精品1024久久| 催眠调教后宫乱淫校园| 91亚洲精品一区二区乱码| 一级性生活毛片| 久久精品男人天堂av| 色婷婷国产精品免| 亚洲免费观看视频| 日韩精品久久久久久久| 日韩欧美在线视频免费观看| 成人免费一级片| 91精品综合久久久久久| 高潮毛片7777777毛片| 国产视频一区在线| 日本视频在线观看| 久久久久久久香蕉网| 香蕉成人av| 亚洲一区二区在线| 亚洲老女人视频免费| 亚洲午夜高清视频| 一区免费视频| www日韩视频| 国产精一品亚洲二区在线视频| 亚洲成av人片在线观看无| 欧美激情一区二区三区蜜桃视频 | 国产麻豆xxxvideo实拍| 国产欧美日韩中文久久| 欧美片一区二区| 色天使色偷偷av一区二区| 国产偷拍一区二区| 国产视频精品自拍| 日本中文字幕中出在线| 国产成人综合av| 丁香综合av| 亚洲欧洲精品一区二区三区波多野1战4| 欧美三级乱码| 爱情岛论坛亚洲首页入口章节| 成人一道本在线| 男女全黄做爰文章| 一本色道综合亚洲| 成人福利小视频| 中文字幕一区日韩电影| 蜜桃视频动漫在线播放| 51国偷自产一区二区三区| 狠狠操综合网| 天天夜碰日日摸日日澡性色av| 国产一区二区三区免费| 黄免费在线观看| 精品久久久久久久大神国产| 精品二区在线观看| 中文字幕日韩欧美| 欧美色999| 精品日本一区二区三区| 欧美另类专区| 亚洲精品性视频| 国产校园另类小说区| 日韩av男人天堂| 欧美成人精品3d动漫h| 免费看a在线观看| 国产成人精品久久亚洲高清不卡| 红杏视频成人| 日韩黄色片在线| 国产乱淫av一区二区三区| 懂色av蜜桃av| 色婷婷综合久久久久中文一区二区 | 成人免费观看在线观看| ts人妖另类在线| 欧美日本二区| 激情成人在线观看| 中文字幕在线观看不卡| 亚洲中文无码av在线| 国产一区二区黄| 日韩在线影院| 日本成人看片网址| 日韩中文欧美在线| 成人性生交大免费看| 日韩欧美一区二区在线| 黄色在线网站| 国产xxx69麻豆国语对白| 免费看成人吃奶视频在线| 欧美色图另类小说| ww久久中文字幕| 国产成人精品777777| 亚洲精品中文字幕有码专区| 最新欧美色图| 日本黄网免费一区二区精品| 久久久噜噜噜| 亚洲综合欧美综合| 欧美美女黄视频| 精品黄色免费中文电影在线播放| 95av在线视频| 亚洲婷婷免费| 在线观看av中文字幕| 日韩欧美国产骚| 国产毛片av在线| 国产日本欧美一区二区三区在线| 日韩电影免费在线观看| 日本一二区免费| 亚洲免费成人av| 欧美特黄一级视频| 2019中文字幕在线免费观看| 中文有码一区| 亚洲这里只有精品| 亚洲另类中文字| 色噜噜在线播放| 日本中文字幕不卡免费| 99久久99热这里只有精品| 超碰人人cao| 欧美日韩中文字幕综合视频| av网站大全在线观看| 92国产精品久久久久首页| 亚洲国产一区二区三区a毛片| 人妻少妇精品视频一区二区三区| 色久优优欧美色久优优| 精品自拍一区| 精品网站在线看| 蜜臀av一区二区在线免费观看| 欧美日韩在线观看免费| 日韩电影第一页| 91麻豆精品国产综合久久久| 一本久道高清无码视频| 中日韩av电影| 亚洲第一视频在线播放| 国产91精品最新在线播放| 午夜激情久久| 精品人妻少妇嫩草av无码| 欧美一区二区三区白人| 日韩欧美一中文字暮专区| 亚洲在线视频一区二区| www.爱久久.com| 一级黄色大片免费观看| 国内免费久久久久久久久久久 | 日本中文字幕在线观看视频| 美女精品视频一区| 国产一区网站| 亚洲一区二区三区四区av| 欧美日韩国产大片| 天堂中文最新版在线中文| 中文字幕乱码免费| 国产人成一区二区三区影院| 熟妇人妻系列aⅴ无码专区友真希| 国产精品久久久久77777|