*Android手势识别(左右滑动)实现页面切换
来源:互联网 发布:log4j ubuntu 编辑:程序博客网 时间:2024/05/17 22:03
要实现 页面左右滑动的效果 就一定要由手势识别器, 就是这个对象 GestureDetector用法其实很简单,这里 写一下 方便以后用到的时候好找
步骤就是 这样子 123.1.
初始化手势识别器
注册 手势识别的 touch 事件就是这么简单。
仅仅两步 就能实现识别手势页面切换。
因为 页面切换 在每个 activity 中都有 所以 我们 把手势识别器 初始化 注册 放在baseactivity里面 能够最有效地 利用我们的代码。
步骤就是 这样子 123.1.
初始化手势识别器
注册 手势识别的 touch 事件就是这么简单。
仅仅两步 就能实现识别手势页面切换。
因为 页面切换 在每个 activity 中都有 所以 我们 把手势识别器 初始化 注册 放在baseactivity里面 能够最有效地 利用我们的代码。
import android.app.Activity;</span>import android.os.Bundle;import android.view.GestureDetector;import android.view.View;import android.view.MotionEvent;public abstract class BaseActivity extends Activity {private GestureDetector mGestureDetector;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);//1 初始化 手势识别器mGestureDetector = new GestureDetector(this,new GestureDetector.SimpleOnGestureListener(){@Overridepublic boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) {// e1: 第一次按下的位置 e2 当手离开屏幕 时的位置 velocityX 沿x 轴的速度 velocityY: 沿Y轴方向的速度//判断竖直方向移动的大小if(Math.abs(e1.getRawY() - e2.getRawY())>100){//Toast.makeText(getApplicationContext(), "动作不合法", 0).show();return true;}if(Math.abs(velocityX)<150){//Toast.makeText(getApplicationContext(), "移动的太慢", 0).show();return true;}if((e1.getRawX() - e2.getRawX()) >200){// 表示 向右滑动表示下一页//显示下一页next(null);return true;}if((e2.getRawX() - e1.getRawX()) >200){ //向左滑动 表示 上一页//显示上一页pre(null);return true;//消费掉当前事件 不让当前事件继续向下传递}return super.onFling(e1, e2, velocityX, velocityY);}});}/** * 下一个页面 * @param view */public abstract void next(View view);/** * 上一个页面 * @param view */public abstract void pre(View view);//重写activity的触摸事件@Overridepublic boolean onTouchEvent(MotionEvent event) {//2.让手势识别器生效mGestureDetector.onTouchEvent(event);return super.onTouchEvent(event);}}
然后 让 每个具体的界面 去继承 这个baseactivity 然后实现相应的 next 或者 pre 方法 即可。 为了 显示效果 ,我们定义 几个动画 效果,左进右出,或者右进左出的。 具体 看 小demo 。
(点我下载)
2 0
- *Android手势识别(左右滑动)实现页面切换
- Android 手势识别 (左右滑动)实现 页面 切换
- Android 手势识别 (左右滑动)实现 页面 切换
- Android左右滑动切换页面
- Android 页面左右滑动切换
- Android处理手势识别的解决方法(左右滑动)
- Android学习笔记(手势识别器,左右滑动)
- Android技术——视图切换(四)“ViewSwitcher+手势识别”实现视图的滑动切换
- Android 左右滑动切换页面或Activity的效果实现
- Android 左右滑动切换页面或Activity的效果实现
- Android获取触摸手势实现左右滑动
- Android-手势-实现图片左右滑动效果
- TabActivity实现手指左右滑动切换页面
- Viewpager+Fragment实现左右滑动切换页面
- android 手势左右滑动
- android手势左右滑动
- android 手势左右滑动
- android 手势左右滑动
- 一步一步跟我学习lucene(12)---lucene搜索之分组处理group查询
- ubuntu配置svn及http模式访问
- 数据结构与算法单链表
- C++细节学习之小数比较和字符型加减
- 【minecraft bukkit 插件开发】config.yml 配置文件编码问题
- *Android手势识别(左右滑动)实现页面切换
- HDU2896 病毒侵袭【AC自动机】
- 安卓下动画总结
- 黑马程序员_java基础网络编程
- 杭电ACM2010java做法
- 随笔01
- Location详解之精准匹配、正则匹配
- 破解WIFI(wpa/wpa2)
- 破解安卓图案锁屏密码