Android Scroll
2016-01-12 15:31
393 查看
Android坐标系
在Android中,将屏幕最左上角的顶点作为Android的坐标系远点,往右和往下为正。
Android视图坐标系
视图坐标系,原点不在是Android坐标系中的屏幕最左上角,而是以父视图左上角为坐标原点。
触控事件——MotionEvent
触控事件MotionEvent中封装了一些常用的事件常量,它定义了触控事件的不同类型。//单点触摸按下动作 public static final int ACTION_DOWN = 0; //单点触摸离开动作 public static final int ACTION_UP = 1; //触摸点移动动作 public static final int ACTION_MOVE = 2; //触摸动作取消 public static final int ACTION_CANCEL = 3; //触摸动作超出边界 public static final int ACTION_OUTSIDE = 4; //多点触摸按下动作 public static final int ACTION_POINTER_DOWN = 5; //多点触摸离开动作 public static final int ACTION_POINTER_UP = 6;
通常情况下,我们会在onTouchEvent(MotionEvent event)方法中通过event.getAction()方法来获取触控事件的类型,并使用switch-case方法来进行筛选,这个代码的模式基本固定,如下:
@Override public boolean onTouchEvent(MotionEvent event){ //获取当前输入点的X、Y坐标()视图坐标 int x = (int)event.getX(); int y = (int)event.getY(); switch(event.getAction){ case MotionEvent.ACTION_DOWN: //处理输入的按下事件 break; case MotionEvent.ACTION_MOVE: //处理输入的移动事件 break; case MotionEvent.ACTION_UP: //处理输入的离开事件 break; } return true; }
获取坐标值的各种方法
View提供的获取坐标的方法。
getTop():获取到的是View自身的顶边到其父布局顶边的距离。
getLeft():获取到的是View自身的左边到其父布局左边的距离。
getRight():获取到的是View自身的右边到其父布局左边的距离。
getBottom():获取到的是View自身的底边到其父布局顶边的距离。
MotionEvent提供的方法。
getX():获取点击事件距离控件左边的距离,即视图坐标。
getY():获取点击事件距离控件顶边的距离,即视图坐标。
getRawX():获取点击事件距离整个屏幕左边的距离,即绝对坐标。
getRawX():获取点击事件距离整个屏幕顶边的距离,即绝对坐标。
相关文章推荐
- html页面适配android手机兼容问题
- OpenGL ES 2.0 for Android
- android画笔的基本属性
- Android debug.keystore的key和密码
- Android的bitmap遇到内存溢出
- Android greenrobot的EventBus
- android之adapter用法总结
- android服务- Notification创建通知 - startForeground 使用前台服务
- android 中动态添加view
- Android中的so挂钩(hook)之Inline hook
- Android利用shape画虚线
- Android BLE蓝牙4.0开发详解
- android 自定义view(二)
- Android安全研究经验谈
- Android安全研究经验谈
- android中popupwindow的点滴
- 安卓开发之百度地图定位
- Fresco介绍 - 一个新的android图片加载库
- android选择图片拍照详解(裁剪-旋转-压缩)
- Android 判断一个url是否有效