欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android实现微信侧滑删除当前页面

程序员文章站 2022-03-08 13:16:57
本文实例为大家分享了微信侧滑删除当前页面的具体代码,供大家参考,具体内容如下 效果图不是太明显 实际上有finish动画 代码 package...

本文实例为大家分享了微信侧滑删除当前页面的具体代码,供大家参考,具体内容如下

效果图不是太明显 实际上有finish动画

Android实现微信侧滑删除当前页面

代码

package com.finddreams.slidingback.ui; 
 
 
import android.app.activity; 
import android.os.bundle; 
import android.util.log; 
import android.view.gesturedetector; 
import android.view.gesturedetector.ongesturelistener; 
import android.view.motionevent; 
/** 
 * 手势滑动的activity,只需要继承就可实现手势滑动 
 * title: gesturebackactivity.java 
 * @author angus 
 * 2016年11月16日 
 * @version 2.0 
 */ 
public class gesturebackactivity extends activity { 
 private gesturedetector mydectector; 
 private static final string tag = "gesturebackactivity"; 
 boolean flingfinishenabled = true; 
 
 @override 
 protected void oncreate(bundle savedinstancestate) { 
 
  super.oncreate(savedinstancestate); 
  initgesturedetector(); 
  appmanager.getappmanager().addactivity(this); 
 } 
 
 private void initgesturedetector() { 
  if (mydectector == null) { 
   mydectector = new gesturedetector(this, new mygesturelistener()); 
  } 
 
 } 
 
 @override 
 public boolean dispatchtouchevent(motionevent ev) { 
 
  if (flingfinishenabled) { 
   return mydectector.ontouchevent(ev) || super.dispatchtouchevent(ev); 
  } 
  return super.dispatchtouchevent(ev); 
 } 
 
 /** 
  * 手势监听器 
  * 
  */ 
 public class mygesturelistener implements ongesturelistener { 
 
  @override 
  public boolean ondown(motionevent e) { 
   // toast.maketext(getapplicationcontext(),"down",toast.length_short).show(); 
   return true; 
  } 
 
  @override 
  public void onshowpress(motionevent e) { 
   // todo auto-generated method stub 
 
  } 
 
  @override 
  public boolean onsingletapup(motionevent e) { 
   // toast.maketext(getapplicationcontext(),"onsingletapup",toast.length_short).show(); 
   return true; 
  } 
 
  @override 
  public boolean onscroll(motionevent e1, motionevent e2, 
    float distancex, float distancey) { 
   // todo auto-generated method stub 
   return false; 
  } 
 
  @override 
  public void onlongpress(motionevent e) { 
   // todo auto-generated method stub 
 
  } 
 
  @override 
  public boolean onfling(motionevent e1, motionevent e2, float velocityx, 
    float velocityy) { 
   if (e1.getx() - e2.getx() > 100 && math.abs(velocityx) > 0) { 
    log.d(tag, "向左滑动"); 
   } else if (e2.getx() - e1.getx() > 100 && math.abs(velocityx) > 0) { 
    log.d(tag, "向右滑动"); 
    appmanager.getappmanager().finishactivity(); 
   } 
   return false; 
  } 
 
 } 
} 

 demo 下载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。