您好,欢迎访问一九零五行业门户网

Android屏幕页面的滑动切换和抽取父类_html/css_WEB-ITnose

因为页面的滑动效果在整个应用中使用较多,所有抽取成父类来介绍,看代码注释
import android.app.activity;import android.content.sharedpreferences;import android.os.bundle;import android.view.gesturedetector;import android.view.motionevent;import android.view.view;import android.view.gesturedetector.simpleongesturelistener;import android.widget.toast;//定义抽象方法shownext,由基类根据需要实现,其注意功能就是滑动切换,可以按123步骤学习public abstract class basesetupactivity extends activity { //1.定义一个手势识别器 private gesturedetector detector; protected sharedpreferences sp; @override protected void oncreate(bundle savedinstancestate) { // todo auto-generated method stub super.oncreate(savedinstancestate); sp = getsharedpreferences(config, mode_private); //2.实例化这个手势识别器,gesturedetector.simpleongesturelistener需要单独引用 detector = new gesturedetector(this, new simpleongesturelistener(){ /** * 当我们的手指在上面滑动的时候回调 */ @override public boolean onfling(motionevent e1, motionevent e2, float velocityx, float velocityy) { //屏蔽在x滑动很慢的情形 if(math.abs(velocityx) 100){ toast.maketext(getapplicationcontext(), 不能这样滑, 0).show(); return true; } if((e2.getrawx() - e1.getrawx())> 200 ){ //显示上一个页面:从左往右滑动 system.out.println(显示上一个页面:从左往右滑动); showpre(); return true; } if((e1.getrawx()-e2.getrawx()) > 200 ){ //显示下一个页面:从右往左滑动 system.out.println(显示下一个页面:从右往左滑动); shownext(); return true; } return super.onfling(e1, e2, velocityx, velocityy); } }); } public abstract void shownext(); public abstract void showpre(); /** * 下一步的点击事件 * @param view */ public void next(view view){ shownext(); } /** * 上一步 * @param view */ public void pre(view view){ showpre(); } //3.使用手势识别器 @override public boolean ontouchevent(motionevent event) { detector.ontouchevent(event); return super.ontouchevent(event); }}
其它类似信息

推荐信息