android开发中为activity添加左右手势识别。如右滑关闭当前页面

  1. /*
  2. * for左右手势
  3. * 1.复制以下的内容到目标Activity
  4. * 2.目标Activity的onCreate()调用initGesture()
  5. * 3.目标Activity需implements OnTouchListener, OnGestureListener
  6. */
  7. private GestureDetector mGestureDetector;
  8. private int verticalMinDistance = 180;
  9. private int minVelocity = 0;
  10.  
  11. private void initGesture() {
  12. mGestureDetector = new GestureDetector((OnGestureListener) this);
  13. }
  14.  
  15. public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
  16.  
  17. if (e1.getX() - e2.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
  18.  
  19. // 切换Activity
  20. // Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
  21. // startActivity(intent);
  22. //Toast.makeText(this, "向左手势", Toast.LENGTH_SHORT).show();
  23. } else if (e2.getX() - e1.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
  24.  
  25. // 切换Activity
  26. // Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
  27. // startActivity(intent);
  28. //Toast.makeText(this, "向右手势", Toast.LENGTH_SHORT).show();
  29. finish();
  30. overridePendingTransition(R.anim.push_right_in, R.anim.push_right_out);
  31. }
  32.  
  33. return false;
  34. }
  35.  
  36. @Override
  37. public void onLongPress(MotionEvent arg0) {
  38. // TODO Auto-generated method stub
  39.  
  40. }
  41.  
  42. @Override
  43. public boolean onScroll(MotionEvent arg0, MotionEvent arg1, float arg2,
  44. float arg3) {
  45. // TODO Auto-generated method stub
  46. return false;
  47. }
  48.  
  49. @Override
  50. public void onShowPress(MotionEvent arg0) {
  51. // TODO Auto-generated method stub
  52.  
  53. }
  54.  
  55. @Override
  56. public boolean onSingleTapUp(MotionEvent arg0) {
  57. // TODO Auto-generated method stub
  58. return false;
  59. }
  60.  
  61. @Override
  62. public boolean onTouch(View v, MotionEvent event) {
  63. // TODO Auto-generated method stub
  64. return mGestureDetector.onTouchEvent(event);
  65. }
  66.  
  67. @Override
  68. public boolean onDown(MotionEvent arg0) {
  69. // TODO Auto-generated method stub
  70. return false;
  71. }
  72.  
  73. @Override
  74. public boolean dispatchTouchEvent(MotionEvent ev) {
  75. mGestureDetector.onTouchEvent(ev);
  76. return super.dispatchTouchEvent(ev);
  77. }

为activity添加左右手势识别的更多相关文章

  1. 【Android】为需要支持API 11之前的Activity添加Action Bar的一种解决方案

    首先汗一个,题目打出来我就觉得像是在写论文…… 家里生了个娃,好久没有写东西了…… 做Android开发有一个很头疼的地方就是随着sdk的演进,很多新东西被加进来.但由于这样那样的限制, 不是所有的新 ...

  2. Android习惯——给全部Activity添加集合管理

    title: 2017-3-23 Android习惯--给全部Activity添加集合管理 public void ActivityCollector{ public static List<A ...

  3. Android addView动态给Activity添加View组件

    本文主要讲述如何动态给UI界面添加布局和控件,在编程的时候很多时候需要动态显示一些内容,在动态添加View的时候,主要使用addView方法. 1. addView方法简介 在Android 中,可以 ...

  4. App 冷启动:给 Android 的 Activity 添加一个背景

    2016/8/8 11:11:18 # 纠错 之前写的这篇内容的知识点有误,给大家造成了误导,深感抱歉. android 中给 Activity 设置背景的方法是在 style 文件中设置 windo ...

  5. android 为activity添加optionMenu选项菜单

    <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android: ...

  6. activity添加切换动画之后出现的黑色背景问题

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">     & ...

  7. 【Flutter 混合开发】添加 Flutter 到 Android Activity

    Flutter 混合开发系列 包含如下: 嵌入原生View-Android 嵌入原生View-iOS 与原生通信-MethodChannel 与原生通信-BasicMessageChannel 与原生 ...

  8. Activity之概览屏幕(Overview Screen)

    概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...

  9. Android开发之Activity的创建跳转及传值

    在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...

随机推荐

  1. 00036_private

    1.私有private 描述人.Person: 属性:年龄: 行为:说话:说出自己的年龄. class Person { int age; String name; public void show( ...

  2. ntdsutil 清理弃用服务器-----待验证

    例子是这样的: 一个森林里有两个树,mm.com和cc.com,分别有dc www.mm.com和vdc.cc.com, cc.com域的控制器崩溃,不想恢复,要彻底删除这个域,由于vdc.cc.co ...

  3. loj2143 「SHOI2017」组合数问题

    大傻逼题--就是求 \(nk\) 个元素选出一些元素,选出的元素的个数要满足模 \(k\) 余 \(r\),求方案数. 想到 \(\binom{n}{m}=\binom{n-1}{m-1}+\bino ...

  4. 用openrowset函数操作远程数据库

    OPENROWSET 包含访问 OLE DB 数据源中的远程数据所需的全部连接信息.当访问链接服务器中的表时,这种方法是一种替代方法,并且是一种使用 OLE DB 连接并访问远程数据的一次性的.特殊的 ...

  5. windows phone 网络开发三部曲(一)各种包的各种抓法

    首先感谢大家对我上一篇博客的支持,让我也体验了一把上榜的感觉. 这无疑是对我这个刚刚打算,认真写写博客的人的莫大的鼓励,再次感谢(鞠躬)!! 接下来想和大家分享一些关于windows phone网络开 ...

  6. Clickomania(区间DP)

    描述 Clickomania is a puzzle in which one starts with a rectangular grid of cells of different colours ...

  7. Dynamic Rankings(zoj 2112)

    题意:带修改的第K大 #include<cstdio> #include<iostream> #include<cstring> #define N 400010 ...

  8. 查看Linux版本的方法

    1)命令: lsb_release -a [root@localhost tmp]# lsb_release -a LSB Version: :core-4.0-amd64:core-4.0-noar ...

  9. Codeforces956D. Contact ATC

    $n \leq 100000$个飞机在坐标轴上,给坐标给速度,坐标速度异号,还有一个风速在$[-w,w]$区间,$w$比最小的速度绝对值要小.由于风速不知道,所以问有多少对飞机可能在原点相遇. 思维定 ...

  10. dos中定义变量与获取常见的引用变量以及四则运算、备份文件(set用法)

    在dos中使用set定义变量: set  a=8              (注意等号两边没有空格) 引用变量如: echo  %a%        将打印a的值 (%a%是获取变量a的值) dos中 ...