Android实现微信侧滑删除当前页面
程序员文章站
2022-07-01 16:19:11
本文实例为大家分享了微信侧滑删除当前页面的具体代码,供大家参考,具体内容如下
效果图不是太明显 实际上有finish动画
代码
package...
本文实例为大家分享了微信侧滑删除当前页面的具体代码,供大家参考,具体内容如下
效果图不是太明显 实际上有finish动画
代码
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 下载
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: Unity 接入安卓渠道SDK问题总结