av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

AIRAndroid:使用TouchEvent類(lèi)(2)

使用TouchEvent類(lèi)(2)

成都創(chuàng)新互聯(lián)堅(jiān)信:善待客戶(hù),將會(huì)成為終身客戶(hù)。我們能堅(jiān)持多年,是因?yàn)槲覀円恢笨芍档眯刨?lài)。我們從不忽悠初訪(fǎng)客戶(hù),我們用心做好本職工作,不忘初心,方得始終。10多年網(wǎng)站建設(shè)經(jīng)驗(yàn)成都創(chuàng)新互聯(lián)是成都老牌網(wǎng)站營(yíng)銷(xiāo)服務(wù)商,為您提供成都網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)站設(shè)計(jì)、成都h5網(wǎng)站建設(shè)、網(wǎng)站制作、高端網(wǎng)站設(shè)計(jì)、重慶小程序開(kāi)發(fā)服務(wù),給眾多知名企業(yè)提供過(guò)好品質(zhì)的建站服務(wù)。

由于有監(jiān)聽(tīng)舞臺(tái)stage的Touch事件,因此只要觸摸屏幕上任何一點(diǎn),Touch事件都將觸發(fā),并在觸摸點(diǎn)處畫(huà)一個(gè)圓。請(qǐng)注意,拖拽的實(shí)現(xiàn)并沒(méi)有使用Flash開(kāi)發(fā)者熟悉的startDrag方法,而是Sprite類(lèi)新增的startTouchDrag方法,該方法代碼如下:

 
 
 
 
  1. startTouchDrag(touchPointID:int, lockCenter:Boolean = false,  
  2. bounds:Rectangle = null):void 

 

和startDrag相比,***的區(qū)別是多了一個(gè)參數(shù)touchPointID,而touchPointID只在支持觸摸行為的設(shè)備上工作,因此startTouchDrag也只能在觸摸設(shè)備上使用。相對(duì)應(yīng)的,結(jié)束拖拽時(shí)使用stopTouchDrag方法,代碼如下:

 
 
 
 
  1. stopTouchDrag(touchPointID:int):void 

在結(jié)束拖拽時(shí)也必須輸入touchPointID,以保證是針對(duì)同一個(gè)觸摸點(diǎn)的動(dòng)作。

因?yàn)槟M器不支持觸摸事件,所以使用觸摸事件的程序必須在真機(jī)上運(yùn)行才能看到效果,如圖3-1所示。

運(yùn)行TouchEventEx程序,有兩個(gè)手指觸摸屏幕上任意兩處,保持觸摸并移動(dòng)手指,兩個(gè)圓將跟隨手指移動(dòng)。在本例中,程序主類(lèi)繼承了AppBase,并重寫(xiě)了init方法,實(shí)際上,這將是后面所有實(shí)例代碼的模板。在A(yíng)ppBase類(lèi)中定義了所有程序通用的屬性以及結(jié)構(gòu),完整代碼如下:

 
 
 
 
  1. package  
  2. {  
  3.  import flash.display.Sprite;  
  4.  import flash.display.StageAlign;  
  5.  import flash.display.StageScaleMode;  
  6.  import flash.events.Event;  
  7.    
  8.  /**  
  9.   * 程序基類(lèi),定義了舞臺(tái)屬性  
  10.   */  
  11.  public class AppBase extends Sprite  
  12.  {    
  13.     
  14.   public function AppBase():void  
  15.   {  
  16.    //定義舞臺(tái)的對(duì)齊方式和縮放模式  
  17.    stage.align = StageAlign.TOP_LEFT;  
  18.    stage.scaleMode = StageScaleMode.NO_SCALE;  
  19.  
  20.    init();  
  21.   }  
  22.     
  23.   /**  
  24.    * 程序入口,所有程序都重寫(xiě)init方法,在此添加自己的邏輯  
  25.    */  
  26.   protected function init():void  
  27.   {  
  28.    //在這里添加代碼  
  29.   }  
  30.  }  

 

 
圖3-1 在真機(jī)上的運(yùn)行效果

AppBase類(lèi)位于公用代碼庫(kù)library中,定義了舞臺(tái)的對(duì)齊方式和縮放模式。將scaleMode設(shè)置為StageScaleMode.NO_SCALE,舞臺(tái)尺寸即為屏幕的實(shí)際尺寸。StageAlign.TOP_LEFT表示舞臺(tái)內(nèi)容頂部居左對(duì)齊,這兩行代碼的作用是為了讓程序能夠適應(yīng)設(shè)備的屏幕尺寸,從而依據(jù)舞臺(tái)對(duì)象的stageWidth和stageHeight對(duì)界面上的元素進(jìn)行布局和定位。比如在上一章中,我們讓棋盤(pán)在屏幕居中顯示的代碼為:

 
 
 
 
  1. grid_container.x = (stage.stageWidth - grid_container.width) / 2; 

類(lèi)AppBase為后面所有的例子程序定義了統(tǒng)一的運(yùn)行流程,將init方法作為程序初始化的入口,每個(gè)例子程序的主類(lèi)會(huì)繼承AppBase類(lèi),并且重寫(xiě)init方法。

使用這樣方式后,一些常用的代碼塊被提取出來(lái)放在基類(lèi)中,被所有的子類(lèi)共用,同時(shí)也提高了程序的靈活性。在后續(xù)的開(kāi)發(fā)中,如果有需要,可以在A(yíng)ppBase基類(lèi)中加入更多的方法,這樣所有的程序都可以共享。


新聞名稱(chēng):AIRAndroid:使用TouchEvent類(lèi)(2)
轉(zhuǎn)載源于:http://uogjgqi.cn/article/cdeseij.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流