WebView Zoom unter Android
Diese plattformspezifische Android-Plattform ermöglicht zusammendrückend zu zoomen und ein Zoom-Steuerelement auf einem WebView
. Sie wird in XAML genutzt, indem Sie die bindbaren Eigenschaften WebView.EnableZoomControls
und WebView.DisplayZoomControls
auf die Werte boolean
festlegen:
<ContentPage ...
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
<WebView Source="https://www.xamarin.com"
android:WebView.EnableZoomControls="true"
android:WebView.DisplayZoomControls="true" />
</ContentPage>
Die bindbare Eigenschaft WebView.EnableZoomControls
steuert, ob der Zwei-Finger-Zoom in der WebView
aktiviert ist, und die bindbare Eigenschaft WebView.DisplayZoomControls
steuert, ob Zoomsteuerelemente in der WebView
überlagert werden.
Alternativ können die Plattformeigenschaften von C# aus über die Fluent-API genutzt werden:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...
webView.On<Android>()
.EnableZoomControls(true)
.DisplayZoomControls(true);
Die WebView.On<Android>
Methode gibt an, dass diese plattformspezifisch nur auf Android läuft. Die WebView.EnableZoomControls
-Methode im Xamarin.Forms.PlatformConfiguration.AndroidSpecific
-Namenspace steuert, ob der Zwei-Finger-Zoom in der WebView
aktiviert ist. Die WebView.DisplayZoomControls
-Methode im selben Namespace steuert, ob Zoomsteuerelemente in der WebView
überlagert sind. Darüber hinaus kann mithilfe der Methoden WebView.ZoomControlsEnabled
und WebView.ZoomControlsDisplayed
zurückgegeben werden, ob der Zwei-Finger-Zoom bzw. Zoomsteuerelemte aktiviert sind.
Das Ergebnis ist, dass der Zwei-Finger-Zoom in einer WebView
aktiviert ist und Zoomsteuerelemente in der WebView
überlagert werden:
Wichtig
Zoomsteuerelemente müssen sowohl aktiviert als auch angezeigt werden, und zwar über die entsprechenden bindbaren Eigenschaften oder Methoden, damit sie einer WebView
überlagert werden können.