Entwerfen von Benutzeroberflächen mit Xcode

Ab Visual Studio 2019, Version 16.8 und Visual Studio für Mac, Version 8.8 wird empfohlen, STORYBOARD- und NIB-Dateien in Xcode Interface Builder auf einem Mac zu bearbeiten.

Hinweis

Ab Visual Studio 2019 Version 16.9 wird keine Möglichkeit unterstützt, iOS-Storyboards unter Windows zu bearbeiten. Verwenden Sie Visual Studio für Mac und Xcode Interface Builder, um ihre Xamarin.iOS-Benutzeroberflächen weiterhin zu erstellen.

In diesem Artikel werden gängige Lösungen zum Erstellen von Benutzeroberflächen mit Xcode Interface Builder behandelt. Dieser Artikel kann besonders hilfreich sein, wenn Sie Ihre Benutzeroberflächen zuvor mit dem Xamarin.iOS-Designer bearbeitet haben.

Eine ausführlichere exemplarische Vorgehensweise für Storyboards finden Sie unter Storyboards in Xamarin.iOS.

Öffnen eines Storyboards

Öffnen Sie eine iOS-Benutzeroberflächendatei in Visual Studio für Mac, indem Sie mit der rechten Maustaste auf eine Storyboarddatei klicken und Xcode Interface Builder auswählen:

Select Interface Builder

Daraufhin sollte das Xcode-Fenster geöffnet werden. Alle hier gespeicherten Änderungen werden in Ihrem Visual Studio-Projekt übernommen.

Xcode Window

Weitere Informationen zu Xcode Interface Builder finden Sie unter Interface Builder Built-In.

Erstellen eines neuen Steuerelements

Um ein neues Steuerelement mit Xcode Interface Builder zu erstellen, wählen Sie zunächst das Storyboard aus, das Sie bearbeiten möchten. Öffnen Sie dann das Dialogfeld „Xcode-Bibliothek“ (Ansicht>Bibliothek anzeigen), und ziehen Sie das Steuerelement auf Ihr Storyboard.

Library Picker

Als nächstes öffnen Sie die entsprechende Headerdatei des Ansichtscontrollers. Für eine leere „Einzelansicht“-App von Xamarin.iOS-App heißt das Standardstoryboard Main.storyboard. Die entsprechende Ansichtscontrollerdatei in Visual Studio heißt ViewController.cs mit einer entsprechenden ViewController.h-Headerdatei, wenn sie in Xcode angezeigt wird.

Öffnen Sie in Xcode Interface Builder sowohl das Storyboard als auch die entsprechende Headerdatei des Ansichtscontrollers. Ziehen Sie das Steuerelement bei gedrückter STRG-TASTE (^) aus dem Storyboard in die Ansichtscontrollerdatei, bis Xcode eine Eingabeaufforderung in einem Dialogfeld anzeigt.

Demo Link Control

Wie oben dargestellt, wird der entsprechende C#-Code automatisch in der CodeBehind-Datei des Ansichtscontrollers generiert. Sie können jetzt in Ihrem Xamarin.iOS-Projekt auf dieses Steuerelement zugreifen.

Bearbeiten des Namens eines vorhandenen Steuerelements

Um den Namen eines vorhandenen Steuerelements in Xcode Interface Builder zu bearbeiten und diese Änderung in Ihrem C#-Projekt zu übernehmen, navigieren Sie zur entsprechenden Headerdatei des Ansichtscontrollers, klicken Sie mit der rechten Maustaste, und wählen Sie Umgestalten aus.

Refactor Control

Ihre CodeBehind-Datei wird mit dem neuen Namen neu generiert, sodass Sie über Code in Visual Studio für Mac auf das Steuerelement zugreifen können.

Bekannte Probleme

In diesem Abschnitt werden bekannte Probleme behandelt.

„Visual Studio konnte nicht mit Xcode kommunizieren“

In macOS Catalina oder höheren Versionen tritt möglicherweise der folgende Fehler auf:

cant communicate err

Stellen Sie zunächst in den Systemeinstellungen Ihres Macs unter Sicherheit und Datenschutz > Automatisierung sicher, dass Visual Studio aufgeführt ist und Xcode aktiviert ist.

macOS security

Wenn Xcode aktiviert ist und die Fehlermeldung weiterhin angezeigt wird, müssen Sie möglicherweise die Datenschutzberechtigungen von Visual Studio für Mac zurücksetzen.

Hierzu können Sie ein Terminalfenster starten und den folgenden Befehl ausführen:

sudo tccutil reset All "com.microsoft.visual-studio"

Um sicherzustellen, dass die obige Änderung wirksam wird, setzen Sie den PRAM Ihres Mac zurück. Anweisungen finden Sie unter Zurücksetzen von NVRAM oder PRAM auf Ihrem Mac.