Xamarin.Forms-Features für Dual-Screen-Geräte

Dual-Screen-Geräte wie das Microsoft Surface Duo bieten neue Möglichkeiten für die Benutzeroberfläche Ihrer Anwendungen. Xamarin.Forms enthält die Klassen TwoPaneView und DualScreenInfo, damit Sie Apps für Dual-Screen-Geräte entwickeln können.

Erste Schritte

Führen Sie die folgenden Schritte aus, um Funktionen für Dual-Screen-Geräte zu einer Xamarin.Forms-App hinzuzufügen:

  1. Öffnen Sie das Dialogfeld NuGet-Paket-Manager für Ihre Projektmappe.

  2. Suchen Sie auf der Registerkarte Durchsuchen nach Xamarin.Forms.DualScreen.

  3. Installieren Sie das Paket Xamarin.Forms.DualScreen in Ihrer Projektmappe.

  4. Fügen Sie den folgenden Methodenaufruf zur Initialisierung zur MainActivity-Klasse im OnCreate-Ereignis des Android-Projekts hinzu:

    Xamarin.Forms.DualScreen.DualScreenService.Init(this);
    

    Diese Methode ist erforderlich, damit die App Änderungen am Zustand der App ermitteln kann, z. B. wenn sie auf Dual-Screen-Geräten angezeigt wird.

  5. Ändern Sie das Activity-Attribut der MainActivity-Klasse des Android-Projekts, sodass alle dieser ConfigurationChanges-Optionen enthalten sind:

    ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation
        | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.UiMode
    

    Diese Werte sind erforderlich, damit Konfigurationsänderungen und der Anzeigezustand zuverlässiger erkannt wird. Standardmäßig werden nur zwei Optionen zu Xamarin.Forms-Projekten hinzugefügt, vergessen Sie also nicht, die restlichen hinzuzufügen, um die zuverlässige Unterstützung von Dual-Screen-Geräte zu gewährleisten.

Problembehandlung

Wenn die DualScreenInfo-Klasse oder das TwoPaneView-Layout nicht erwartungsgemäß funktionieren, überprüfen Sie die Anweisungen auf dieser Seite nochmal. Das Auslassen oder fehlerhafte Konfigurieren der Init-Methode oder der ConfigurationChanges-Attributwerte sind häufig die Ursache für Fehler.

Weitere Anweisungen und eine Referenzimplementierung finden Sie unter Xamarin.Forms-Beispiele für Dual-Screen-Geräte.

Nächste Schritte

Sobald Sie NuGet hinzugefügt haben, fügen Sie mithilfe der folgenden Artikel Features für Dual-Screen-Geräte zu Ihrer App hinzu:

  • Entwurfsmuster für Dual-Screen-Geräte: Wenn Sie überlegen, wie Sie die Möglichkeiten von zwei Bildschirmen auf Dual-Screen-Geräten am besten nutzen, können Sie den Artikel zu Entwurfsmustern lesen. Dort finden Sie Informationen zur besten Lösung für die Benutzeroberfläche Ihrer Anwendung.
  • TwoPaneView-Layout : Die Xamarin.FormsTwoPaneView Klasse, inspiriert durch das UWP-Steuerelement des gleichen Namens, ist ein plattformübergreifendes Layout, das für Dual-Screen-Geräte optimiert ist.
  • DualScreenInfo-Hilfsklasse: Mithilfe der DualScreenInfo-Klasse können Sie unter anderem bestimmen, in welchem Bereich Ihre Ansicht angezeigt wird, wie groß sie ist, welche Ausrichtung das Gerät hat und welchen Öffnungsgrad das Scharnier aufweist.
  • Trigger für Dual-Screen-Geräte: Der Xamarin.Forms.DualScreen-Namespace enthält zwei Zustandstrigger, die eine VisualState-Änderung auslösen, wenn sich der Ansichtsmodus des angefügten Layouts oder Fensters ändert.

Weitere Informationen finden Sie in der Entwicklerdokumentation für Dual-Screen-Geräte.