Android - 向左滑动|向右滑动。手势检测

时间:2011-03-26 01:38:56

标签: android listener gesture-recognition

试图将这个“手势”功能添加到我的第一个程序中,几乎我所做的每一次搜索都来到了这个帖子:

Fling gesture detection on grid layout

我能够让它工作......但就我而言,我不确定它是否100%正确。

在我的布局中,我有3个水平linearLayouts,每个都有5个按钮..所以它是3列5个按钮..根据我必须的线程:

“将您的手势监听器附加到您添加到主布局的所有视图中;”

这意味着所有15个按钮:

“button.setOnTouchListener(gestureListener);”

难道我不能说带按钮的LinearLayouts是那些寻找滑动手势的人吗?或者因为它们“隐藏”在按钮的背面,这是不可能完成的?

因为我有另外一个布局,我想用它实现,它还有更多的按钮..

所以..只是想在我的屏幕上寻找一种更简单的方法来向右滑动|离开..如果确实存在..

提前谢谢

1 个答案:

答案 0 :(得分:15)

  

我不能这么说   带按钮的LinearLayouts是   那些寻找滑动的人   手势?或者因为它们是“隐藏的”   在按钮的背面,这不可能   可以吗?

我认为这正是你要面对的问题,除非你检测到所有视觉对象的滑动。

屏幕上的按钮(或其他小部件)越多,用户在开始/结束滑动手势时就越准确 - 换句话说,他们需要在按钮之间的间隙中开始/结束

要检测滑动需要开始和结束位置 - 如果用户在按钮上开始和结束(没有收听滑动),则不会检测到滑动。同样,从按钮开始到“间隙”结束(反之亦然)将不会检测到有效的滑动,因为只有一个起点/终点对“滑动检测”有效。

我能想到的最佳方法(尽管我从未尝试过)是使用GestureOverlayView。这使您可以在背景视图的顶部设置透明覆盖,并可用于检测“滑动”之类的内容,而无需您的基础视图需要了解手势。

在开发人员资源Gestures

中查看此内容