91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • 仿微信朋友圈雙擊頂部回到最前端(GestureDetector.OnDoubleTapListener)

仿微信朋友圈雙擊頂部回到最前端(GestureDetector.OnDoubleTapListener)

發布時間:2020-08-16 00:39:50 來源:網絡 閱讀:5853 作者:愚人cc 欄目:開發技術

 listView.setSelection(0);



  1. public class MainActivity extends Activity implements OnTouchListener{  

  2.   

  3.     private GestureDetector mGestureDetector;     

  4.       

  5.   

  6.     @Override  

  7.     protected void onCreate(Bundle savedInstanceState) {  

  8.         super.onCreate(savedInstanceState);  

  9.         setContentView(R.layout.activity_main);  

  10.           

  11.   

  12.       mGestureDetector = new GestureDetector(new gestureListener()); //使用派生自OnGestureListener  

  13.       mGestureDetector.setOnDoubleTapListener(new doubleTapListener());  

  14.           

  15.       TextView tv = (TextView)findViewById(R.id.tv);  

  16.       tv.setOnTouchListener(this);  

  17.       tv.setFocusable(true);     

  18.       tv.setClickable(true);     

  19.       tv.setLongClickable(true);   

  20.     }  

  21.       

  22.       

  23.     /*  

  24.      * 在onTouch()方法中,我們調用GestureDetector的onTouchEvent()方法,將捕捉到的MotionEvent交給GestureDetector  

  25.      * 來分析是否有合適的callback函數來處理用戶的手勢  

  26.      */    

  27.     public boolean onTouch(View v, MotionEvent event) {  

  28.         return mGestureDetector.onTouchEvent(event);     

  29.     }  

  30.       

  31.     //OnGestureListener監聽  

  32.     private class gestureListener implements GestureDetector.OnGestureListener{  

  33.   

  34.         public boolean onDown(MotionEvent e) {  

  35.             Log.i("MyGesture""onDown");     

  36.             Toast.makeText(MainActivity.this"onDown", Toast.LENGTH_SHORT).show();     

  37.             return false;  

  38.         }  

  39.   

  40.         public void onShowPress(MotionEvent e) {  

  41.             Log.i("MyGesture""onShowPress");     

  42.             Toast.makeText(MainActivity.this"onShowPress", Toast.LENGTH_SHORT).show();     

  43.         }  

  44.   

  45.         public boolean onSingleTapUp(MotionEvent e) {  

  46.             Log.i("MyGesture""onSingleTapUp");     

  47.             Toast.makeText(MainActivity.this"onSingleTapUp", Toast.LENGTH_SHORT).show();     

  48.             return true;     

  49.         }  

  50.   

  51.         public boolean onScroll(MotionEvent e1, MotionEvent e2,  

  52.                 float distanceX, float distanceY) {  

  53.             Log.i("MyGesture22""onScroll:"+(e2.getX()-e1.getX()) +"   "+distanceX);     

  54.             Toast.makeText(MainActivity.this"onScroll", Toast.LENGTH_LONG).show();     

  55.               

  56.             return true;     

  57.         }  

  58.   

  59.         public void onLongPress(MotionEvent e) {  

  60.              Log.i("MyGesture""onLongPress");     

  61.              Toast.makeText(MainActivity.this"onLongPress", Toast.LENGTH_LONG).show();     

  62.         }  

  63.   

  64.         public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,  

  65.                 float velocityY) {  

  66.             Log.i("MyGesture""onFling");     

  67.             Toast.makeText(MainActivity.this"onFling", Toast.LENGTH_LONG).show();     

  68.             return true;  

  69.         }  

  70.     };  

  71.       

  72.     //OnDoubleTapListener監聽  

  73.     private class doubleTapListener implements GestureDetector.OnDoubleTapListener{  

  74.   

  75.         public boolean onSingleTapConfirmed(MotionEvent e) {  

  76.             Log.i("MyGesture""onSingleTapConfirmed");     

  77.             Toast.makeText(MainActivity.this"onSingleTapConfirmed", Toast.LENGTH_LONG).show();    

  78.             return true;  

  79.         }  

  80.   

  81.         public boolean onDoubleTap(MotionEvent e) {  

  82.             Log.i("MyGesture""onDoubleTap");     

  83.             Toast.makeText(MainActivity.this"onDoubleTap", Toast.LENGTH_LONG).show();    

  84.             return true;  

  85.         }  

  86.   

  87.         public boolean onDoubleTapEvent(MotionEvent e) {  

  88.             Log.i("MyGesture""onDoubleTapEvent");     

  89.             Toast.makeText(MainActivity.this"onDoubleTapEvent", Toast.LENGTH_LONG).show();    

  90.             return true;  

  91.         }  

  92.     };  

  93. }  



參考: 

用戶手勢檢測-GestureDetector使用詳解


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

普陀区| 辽阳市| 仪陇县| 西峡县| 景洪市| 兴海县| 五峰| 渑池县| 武夷山市| 永吉县| 江津市| 松原市| 泾阳县| 阿拉善左旗| 双柏县| 沿河| 丰镇市| 雷州市| 仙游县| 百色市| 大理市| 梁平县| 凤山市| 方正县| 平阴县| 松阳县| 海宁市| 辽阳县| 曲靖市| 芒康县| 资兴市| 海盐县| 宜兴市| 浙江省| 博乐市| 广南县| 上饶市| 蛟河市| 夹江县| 白山市| 哈巴河县|