手势(由不理解drag和swipe引发的)

来源:互联网 发布:keep软件官方下载 编辑:程序博客网 时间:2024/06/11 17:12


drag是拖动,必须能够选中一个目标,可以是一个点。

swipe是一个滑动,可以没有目标的滑动。

而手机上的滑动解锁的小符号》或 ^ 跟手机上的图标不是一个层面上的,是无法用drag来拖拉的。


1.拖拽与滑动相关知识

1)拖拽:将一个组件从一个坐标移动到另一个坐标处

2)滑动:从一个坐标点移动到另一个坐标点

3)步长:从一点滑动到另一点使用的时间

2.拖拽与滑动相关API介绍

返回值          方法名                   描述


boolean drag(int startX,int startY,int endX,int endY,int steps) 拖动对象从一个坐标拖动到另一个坐标


boolean swipe(Point[] segments,int segmentSteps)   在点阵列中滑动,5ms一步


boolean swipe(int startX,int startY,int endX,int endY,int steps) 通过坐标滑动屏幕


3.拖拽组件到另一个点

public void test7()
 {

//startX,startY为组件的中点
  int startX,startY,endX,endY,steps;
  startX=(683-547)/2+547;
  startY=(1229-683)/2+683;
  endX=startX;
  endY=900;
  steps=10;
  UiDevice.getInstance().drag(startX,startY,endX,endY,steps);
 }

4.滑动屏幕

public void test8()
 {
  int h=UiDevice.getInstance().getDisplayHeight();
  int w=UiDevice.getInstance().getDisplayWidth();
  UiDevice.getInstance().swipe(w-50, h/2, 50, h/2, 100);//从右往左滑动屏幕
 }

5.在多个点的轨迹上滑动屏幕

public void test9()
 {
  Point p1=new Point();
  Point p2=new Point();
  Point p3=new Point();
  Point p4=new Point();
  p1.x=300;
  p1.y=100;
  p2.x=600;
  p2.y=110;
  p3.x=690;
  p3.y=1000;
  p4.x=620;
  p4.y=1000;
  Point[] args={p1,p2,p3,p4};
  UiDevice.getInstance().swipe(args, 2000);
 }

iphone操作手势的大概种类

1.点击(Tap)
点击作为最常用手势,用于按下或选择一个控件或条目(类似于普通的鼠标点击)、

2.拖动(Drag)
拖动用于实现一些页面的滚动,以及对控件的移动功能。

3.滑动(Flick)
滑动用于实现页面的快速滚动和翻页的功能。

4.横扫(Swipe)
横扫手势用于激活列表项的快捷操作菜单

5.双击(Double Tap)
双击放大并居中显示图片,或恢复原大小(如果当前已经放大)。同时,双击能够激活针对文字编辑菜单。

6.放大(Pinch open)
放大手势可以实现以下功能:打开订阅源,打开文章的详情。在照片查看的时候,放大手势也可实现放大图片的功能。

7.缩小(Pinch close)
缩小手势,可以实现与放大手势相反且对应的功能的功能:关闭订阅源退出到首页,关闭文章退出至索引页。在照片查看的时候,缩小手势也可实现缩小图片的功能。

8.长按(Touch &Hold)
在我的订阅页,长按订阅源将自动进入编辑模式,同时选中手指当前按下的订阅源。这时可直接拖动订阅源移动位置。
针对文字长按,将出现放大镜辅助功能。松开后,则出现编辑菜单。
针对图片长按,将出现编辑菜单。

9.摇晃(Shake)
摇晃手势,将出现撤销与重做菜单。主要是针对用户文本输入的。

 Tap(点击)、Pinch(捏合)、Rotation(旋转)、Swipe(滑动,快速移动,是用于监测滑动的方向的)、Pan (拖移,慢速移动,是用于监测偏移的量的)以及 LongPress(长按)。




0 0