Xamarin.Android 中的触摸和手势

当今许多设备上的触摸屏使用户能够以自然而直观的方式快速高效地与设备交互。 这种交互不仅限于简单的触摸检测 - 还可以使用手势。 例如,通过用两根手指捏合屏幕的一部分(用户可以放大或缩小)来收缩缩放手势就是一个非常常见的示例。本指南介绍 Android 中的触摸和手势。

触控概述

iOS 和 Android 在处理触摸的方式上相似。 两者都可以支持多点触控(屏幕上有许多接触点)和复杂的手势。 本指南介绍了概念中的一些相似之处,以及在两个平台上实现触摸和手势的特殊性。

Android 使用 MotionEvent 对象来封装触摸数据,并使用 View 对象上的方法来侦听触摸。

除了捕获触摸数据外,iOS 和 Android 还提供了将触摸模式解释为手势的方法。 这些手势识别器反过来可用于解释特定于应用程序的命令,例如图像旋转或翻页。 Android 提供了一些受支持的手势和资源,使添加复杂的自定义手势变得容易。

无论你使用的是 Android 还是 iOS,触摸和手势识别器之间的选择都可能令人困惑。 本指南通常建议优先使用手势识别器。 手势识别器作为离散类实现,这些类提供更大的关注点分离和更好的封装。 这样就可以轻松地在不同视图之间共享逻辑,从而最大程度地减少编写的代码量。

本指南为每个操作系统遵循类似的格式:首先,对平台的触摸 API 进行介绍和说明,因为它们是构建触摸交互的基础。 然后,我们深入了解手势识别器的世界 - 首先探索一些常见的手势,最后为应用程序创建自定义手势。 最后,你将了解如何使用低级别触摸跟踪来跟踪单个手指,以创建指画程序。

章节

总结

在本指南中,我们介绍了 Android 中的触摸。 对于这两个操作系统,我们了解了如何启用触摸以及如何响应触摸事件。 接下来,我们了解了 Android 和 iOS 为处理一些更常见的方案而提供的手势和一些手势识别器。 我们检查了如何创建自定义手势并在应用程序中实现它们。 演练演示了每个操作系统的概念和 API,你还了解了如何跟踪各个手指。