Compartir vía


Zoom de WebView en Android

Esta característica específica de la plataforma Android habilita los gestos de reducir o ampliar y controlar el zoom en WebView. Se consume en XAML estableciendo las propiedades enlazables WebView.EnableZoomControls y WebView.DisplayZoomControls en valores boolean:

<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>

La propiedad WebView.EnableZoomControls enlazable controla si la propiedad de reducir a zoom está habilitada en WebView y la propiedad enlazable WebView.DisplayZoomControls controla si los controles de zoom se superponen en WebView.

Como alternativa, el elemento específico de la plataforma se puede consumir desde C# mediante la API fluida:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...

webView.On<Android>()
    .EnableZoomControls(true)
    .DisplayZoomControls(true);

El método WebView.On<Android> especifica que esta plataforma específica solo se ejecutará en Android. El método WebView.EnableZoomControls, en el espacio de nombres Xamarin.Forms.PlatformConfiguration.AndroidSpecific, se usa para controlar si la función de reducir a zoom está habilitada en WebView. El método WebView.DisplayZoomControls, en el mismo espacio de nombres, se usa para controlar si los controles de zoom se superponen en WebView. Además, los métodos WebView.ZoomControlsEnabled y WebView.ZoomControlsDisplayed se pueden usar para devolver si se habilitan reducir a zoom y los controles de zoom, respectivamente.

El resultado es que reducir a zoom se puede habilitar en WebView y los controles de zoom se pueden superponer en WebView:

Captura de pantalla de WebView acercada en Android

Importante

Los controles de zoom deben estar habilitados y mostrados, a través de las propiedades o métodos enlazables correspondientes, para superponerse en WebView.