zoukankan      html  css  js  c++  java
  • 加入ScrollView后OnGestureListener无效的解决办法

    android中,ViewFlipper+OnGestureListener可以实现左右滑动效果。 
    但是在ViewFlipper加上了ScrollView就悲剧了,左右滑动事件无效了…… 

    这里其实只需要多实现一个方法就是了,主要是把事件交给系统自己处理 
    在OnGestureListener对象中,实现以下方法 

    Java代码:  
    1. @Override  
    2. public boolean dispatchTouchEvent(MotionEvent ev){  
    3.     super.dispatchTouchEvent(ev);     
    4.     //productGestureDetector 是 GestureDetector对象  
    5.     return productGestureDetector.onTouchEvent(ev);   
    6. }  


    另外,由于有了上下滑动和左右滑动的原因,在上下滑动的时候可能会不小心就触发了左右滑动,所以需要在加点东西 
    Java代码:  

      1. private static final int FLING_MIN_DISTANCE = 100;  
      2. private static final int FLING_MIN_VELOCITY = 50;  
      3.   
      4. //....  
      5.   
      6. public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,  
      7.             float velocityY) {  
      8.   
      9.         if (e1.getX() - e2.getX() > FLING_MIN_DISTANCE  
      10.                 && Math.abs(velocityX) > FLING_MIN_VELOCITY) {// move to left  
      11.                     //TODO 左滑动  
      12.   
      13.         } else if (e2.getX() - e1.getX() > FLING_MIN_DISTANCE  
      14.                 && Math.abs(velocityX) > FLING_MIN_VELOCITY) {  
      15.             //TODO 右滑动  
      16.         } else {  
      17.             return false;  
      18.         }  
      19.         return true;  
      20.     }  
      21.  
  • 相关阅读:
    PortalBasic Web 应用开发框架:应用篇(六) —— 公共组件
    如何提高Linq查询的性能
    Distributed SMS Processor
    新书《火球 UML大战需求分析》试读 第一章 大话UML
    UML 软件这是源基地软件大学
    Java多线程编程总结
    [译]扩展JavaScript功能的正确方法
    OEA体验:常用功能3 多对多关系
    MicroOrm.Net
    ASP.NET MVC Model元数据及其定制 [中篇]
  • 原文地址:https://www.cnblogs.com/awkflf11/p/4613042.html
Copyright © 2011-2022 走看看