Xamarin.Android 中的触控和手势
当今许多设备上的触摸屏允许用户以自然直观的方式快速有效地与设备交互。 这种交互并不局限于简单的触摸检测 – 也可以使用手势。 例如,捏合缩放手势就是一个非常常见的示例,通过用两根手指捏合屏幕的一部分,用户可以放大或缩小屏幕。本指南探讨 Android 中的触控和手势。
触控概述
iOS 和 Android 在触控处理方式上类似。 两者都可以支持多点触控(屏幕上的许多接触点)和复杂手势。 本指南介绍了概念上的一些相似之处,以及在两种平台上实现触控和手势的特殊性。
Android 使用 MotionEvent
对象来封装触控数据,使用 View 对象上的方法来侦听触控。
除了捕获触控数据外,iOS 和 Android 还提供将触控模式解释为手势的方法。 这些手势识别器反过来可用于解释特定于应用程序的命令,例如旋转图像或翻页。 Android 提供了一些受支持的手势,以及轻松添加复杂的自定义手势的资源。
无论是使用 Android 还是 iOS,触控和手势识别器之间的选择可能都令人困惑。 本指南建议一般情况下,应优先选择手势识别器。 手势识别器作为离散类实现,这提供了更大的关注点分离和更好的封装。 这样,就可以轻松地在不同的视图之间共享逻辑,最大限度地减少编写的代码量。
对于每个操作系统,本指南都遵循类似的格式:首先,介绍和解释平台的触控 API,因为它们是构建触控交互的基础。 然后,我们深入了解手势识别器领域 - 先探索一些常见手势,后为应用程序创建自定义手势。 最后,你将了解如何使用低级别触控跟踪来跟踪各个手指,以创建手指绘图程序。
部分
总结
在本指南中,我们探讨了 Android 中的触控。 对于这两个操作系统,我们学习了如何启用触控以及如何响应触控事件。 接下来,我们了解了各种手势,以及 Android 和 iOS 为处理某些更常见的方案而提供的一些手势识别器。 我们探讨了如何创建自定义手势以及如何在应用程序中实现它们。 演练演示了每个运转的操作系统的概念和 API,还演示了如何跟踪各个手指。