Xamarin.Forms Benutzerdefinierte Renderer
Xamarin.Forms-Benutzeroberflächen werden mit den nativen Steuerelementen der Zielplattform gerendert. Dadurch können Xamarin.Forms-Anwendungen ihr Erscheinungsbild auf den einzelnen Plattformen beibehalten. Mit benutzerdefinierten Renderern können Entwickler diesen Prozess außer Kraft setzen, um die Darstellung und das Verhalten von Xamarin.Forms Steuerelementen auf jeder Plattform anzupassen.
Einführung in benutzerdefinierte Renderer
Benutzerdefinierte Renderer sind eine praktische Methode zum Anpassen der Darstellung und des Verhaltens von Xamarin.Forms-Steuerelementen. Sie können für geringfügige stilistische Änderungen oder für umfangreiche, plattformspezifische Anpassungen des Layouts und Verhaltens verwendet werden. In diesem Artikel werden benutzerdefinierte Renderer vorgestellt, und Sie erfahren, wie Sie einen benutzerdefinierten Renderer erstellen können.
Renderer-Basisklassen und native Steuerelemente
Jedes Xamarin.Forms-Steuerelement verfügt über einen entsprechenden Renderer für jede Plattform, die eine Instanz eines nativen Steuerelements erstellt. In diesem Artikel werden die Klassen für Renderer und native Steuerelemente aufgelistet, die eine Xamarin.Forms-Seite, ein Xamarin.Forms-Layout, eine Xamarin.Forms-Ansicht und eine Xamarin.Forms-Zelle implementieren.
Anpassen eines Eintrags
Mit dem Xamarin.FormsEntry
Steuerelement kann eine einzelne Textzeile bearbeitet werden. In diesem Artikel wird veranschaulicht, wie Sie einen benutzerdefinierten Renderer für das Entry
-Steuerelement erstellen, sodass Entwickler das native Standardrendering mit ihrem eigenen plattformspezifischen Rendering überschreiben können.
Anpassen einer ContentPage
Ein ContentPage
-Element ist ein visuelles Element, das eine Ansicht anzeigt, die den Großteil des Bildschirms einnimmt. In diesem Artikel wird veranschaulicht, wie Sie einen benutzerdefinierten Renderer für die ContentPage
-Seite erstellen, sodass Entwickler das native Standardrendering mit ihrem eigenen plattformspezifischen Rendering überschreiben können.
Anpassen einer Kartennadel
Xamarin.Forms.Maps bietet eine plattformübergreifende Abstraktion zum Anzeigen von Karten, die die native Karten-API auf jeder Plattform verwenden, sodass Benutzer Karten schnell und auf bekannte Weise nutzen können. In diesem Artikel wird veranschaulicht, wie Sie benutzerdefinierte Renderer für das Map
-Steuerelement erstellen, sodass Entwickler das native Standardrendering mit ihrem eigenen plattformspezifischen Rendering überschreiben können.
Anpassen einer ListView
A Xamarin.FormsListView
ist eine Ansicht, die eine Sammlung von Daten als vertikale Liste anzeigt. In diesem Artikel wird veranschaulicht, wie Sie einen benutzerdefinierten Renderer erstellen, der plattformspezifische Listensteuerelemente und natives Zellenlayout kapselt, sodass die Kontrolle über die Leistung nativer Listensteuerelemente erhöht wird.
Anpassen einer ViewCell
A Xamarin.FormsViewCell
ist eine Zelle, die einer ListView
oder TableView
, die eine vom Entwickler definierte Ansicht enthält, hinzugefügt werden kann. In diesem Artikel wird veranschaulicht, wie Sie einen benutzerdefinierten Renderer für ein ViewCell
Steuerelement erstellen, das in einem Xamarin.FormsListView
Steuerelement gehostet wird. Das verhindert, dass die Xamarin.Forms-Layoutberechnungen wiederholt beim Scrollen in ListView
aufgerufen werden.
Anpassen eines WebView-Elements
Eine Xamarin.FormsWebView
Ansicht, in der Web- und HTML-Inhalte in Ihrer App angezeigt werden. In diesem Artikel wird erläutert, wie Sie einen benutzerdefinierten Renderer erstellen, der WebView
erweitert, um das Aufrufen von C#-Code über JavaScript zuzulassen.
Implementieren einer Ansicht
Benutzerdefinierte Xamarin.Forms-Benutzeroberflächen-Steuerelemente sollten von der View
-Klasse abgeleitet werden, die verwendet wird, um einem Bildschirm Layout und Steuerelemente hinzuzufügen. In diesem Artikel wird veranschaulicht, wie Sie einen benutzerdefinierten Renderer für ein benutzerdefiniertes Xamarin.Forms-Steuerelement erstellen, mit dem Sie eine Vorschau eines Videostreams von der Kamera des Geräts anzeigen können.