Teilen über


Bereitstellen von haptischem Feedback in Xamarin.iOS

Übersicht

Auf dem i Telefon 7 und i Telefon 7 Plus enthält Apple neue haptische Antworten, die zusätzliche Möglichkeiten bieten, den Benutzer physisch zu engagieren. Haptisches Feedback (häufig als Haptik bezeichnet) verwendet das Gefühl der Berührung (über Kraft, Vibrationen oder Bewegung) im Design der Benutzeroberfläche. Verwenden Sie diese neuen taktilen Feedbackoptionen, um die Aufmerksamkeit des Benutzers zu wecken und ihre Aktionen zu stärken.

Die folgenden Themen werden im Detail behandelt:

Über haptisches Feedback

Mehrere integrierte UI-Elemente bieten bereits haptisches Feedback wie Auswahl, Schalter und Schieberegler. iOS 10 bietet nun die Möglichkeit, haptik programmgesteuert mit einer konkreten Unterklasse der UIFeedbackGenerator Klasse auszulösen.

Der Entwickler kann eine der folgenden UIFeedbackGenerator Unterklassen verwenden, um haptisches Feedback programmgesteuert auszulösen:

  • UIImpactFeedbackGenerator - Verwenden Sie diesen Feedback-Generator, um eine Aktion oder Aufgabe zu ergänzen, z. B. die Darstellung eines "Thud", wenn eine Ansicht an ortsbezogene Folie folie oder zwei Bildschirmobjekte kollidieren.
  • UINotificationFeedbackGenerator – Verwenden Sie diesen Feedbackgenerator für Benachrichtigungen, z. B. eine Abgeschlossene Aktion, einen Fehler oder eine andere Art von Warnung.
  • UISelectionFeedbackGenerator – Verwenden Sie diesen Feedbackgenerator, um eine Auswahl aktiv zu ändern, z. B. das Auswählen eines Elements aus einer Liste.

UIImpactFeedbackGenerator

Verwenden Sie diesen Feedback-Generator, um eine Aktion oder Aufgabe zu ergänzen, z. B. die Darstellung eines "Thud", wenn eine Ansichtsfolie eingefügt wird oder zwei Bildschirmobjekte kollidieren.

Verwenden Sie den folgenden Code, um Auswirkungsfeedback auszulösen:

using UIKit;
...

// Initialize feedback
var impact = new UIImpactFeedbackGenerator (UIImpactFeedbackStyle.Heavy);
impact.Prepare ();

// Trigger feedback
impact.ImpactOccurred ();

Wenn der Entwickler eine neue Instanz der UIImpactFeedbackGenerator Klasse erstellt, gibt er die UIImpactFeedbackStyle Stärke des Feedbacks an:

  • Heavy
  • Medium
  • Light

Die Prepare Methode der UIImpactFeedbackGenerator Methode wird aufgerufen, um das System darüber zu informieren, dass haptisches Feedback eintritt, damit die Latenz minimiert werden kann.

Die ImpactOccurred Methode löst dann haptisches Feedback aus.

UINotificationFeedbackGenerator

Verwenden Sie diesen Feedbackgenerator für Benachrichtigungen, z. B. eine Abgeschlossene Aktion, einen Fehler oder eine andere Art von Warnung.

Verwenden Sie den folgenden Code, um Benachrichtigungsfeedback auszulösen:

using UIKit;
...

// Initialize feedback
var notification = new UINotificationFeedbackGenerator ();
notification.Prepare ();

// Trigger feedback
notification.NotificationOccurred (UINotificationFeedbackType.Error);

Eine neue Instanz der UINotificationFeedbackGenerator Klasse wird erstellt, und die Prepare Methode wird aufgerufen, um das System darüber zu informieren, dass haptisches Feedback eintritt, damit die Latenz minimiert werden kann.

Dies NotificationOccurred wird aufgerufen, um haptisches Feedback mit einer bestimmten Anzahl UINotificationFeedbackType von:

  • Success
  • Warning
  • Error

UISelectionFeedbackGenerator

Verwenden Sie diesen Feedbackgenerator, um eine Auswahl aktiv zu ändern, z. B. das Auswählen eines Elements aus einer Liste.

Verwenden Sie den folgenden Code, um Auswahlfeedback auszulösen:

using UIKit;
...

// Initialize feedback
var selection = new UISelectionFeedbackGenerator ();
selection.Prepare ();

// Trigger feedback
selection.SelectionChanged ();

Eine neue Instanz der UISelectionFeedbackGenerator Klasse wird erstellt, und die Prepare Methode wird aufgerufen, um das System darüber zu informieren, dass haptisches Feedback eintritt, damit die Latenz minimiert werden kann.

Die SelectionChanged Methode löst dann haptisches Feedback aus.

Zusammenfassung

In diesem Artikel werden die neuen Arten von haptischem Feedback behandelt, die in iOS 10 verfügbar sind und wie sie in Xamarin.iOS implementiert werden.