触觉反馈

Browse sample. 浏览示例

本文介绍如何使用 .NET Multi-platform App UI (.NET MAUI) IHapticFeedback 接口控制设备上的触觉反馈。 触觉反馈通常由设备提供的轻微振动感表现,从而为用户提供响应。 触觉反馈的一些示例包括用户敲击虚拟键盘时,或者用户玩游戏时,即:玩家的角色遇到敌方角色时。

IHapticFeedback 接口的默认实现通过 HapticFeedback.Default 属性提供。 IHapticFeedback 接口和 HapticFeedback 类都包含在 Microsoft.Maui.Devices 命名空间中。

开始使用

若要访问触觉反馈功能,需要以下特定于平台的设置。

需要具有 Vibrate 权限,并且必须在 Android 项目中进行配置。 可以通过以下方法添加此权限:

  • 添加基于程序集的权限:

    打开 Platforms/Android/MainApplication.cs 文件,并在 using 指令后面添加以下程序集属性:

    [assembly: UsesPermission(Android.Manifest.Permission.Vibrate)]
    

    - 或 -

  • 更新 Android 清单:

    打开 Platforms/Android/AndroidManifest.xml 文件并在 manifest 节点中添加以下内容:

    <uses-permission android:name="android.permission.VIBRATE" />
    

    - 或 -

  • 在清单编辑器中更新 Android 清单:

    在 Visual Studio 中,双击 Platforms/Android/AndroidManifest.xml 文件以打开 Android 清单编辑器。 然后,在“所需权限”下方勾选“振动”权限。 这样会自动更新 AndroidManifest.xml 文件。

使用触觉反馈

触觉反馈功能以两种模式执行:短 ClickLongPress。 下面的代码示例根据用户单击的 Button 向用户启动 ClickLongPress 触觉反馈响应:

private void HapticShortButton_Clicked(object sender, EventArgs e) =>
    HapticFeedback.Default.Perform(HapticFeedbackType.Click);

private void HapticLongButton_Clicked(object sender, EventArgs e) =>
    HapticFeedback.Default.Perform(HapticFeedbackType.LongPress);