Compartir vía


Estilo de presentación de la página modal en iOS

Esta característica específica de la plataforma iOS se usa para establecer el estilo de presentación de una página modal y, además, se puede usar para mostrar páginas modales que tienen fondos transparentes. Se consume en XAML estableciendo la propiedad enlazable Page.ModalPresentationStyle en un valor de enumeración UIModalPresentationStyle:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
             ios:Page.ModalPresentationStyle="OverFullScreen">
    ...
</ContentPage>

Como alternativa, se puede consumir desde C# mediante la API fluida:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

public class iOSModalFormSheetPageCS : ContentPage
{
    public iOSModalFormSheetPageCS()
    {
        On<iOS>().SetModalPresentationStyle(UIModalPresentationStyle.OverFullScreen);
        ...
    }
}

El método Page.On<iOS> especifica que esta plataforma específica solo se ejecutará en iOS. El método Page.SetModalPresentationStyle, en el espacio de nombres Xamarin.Forms.PlatformConfiguration.iOSSpecific, se usa para establecer el estilo de presentación modal en Page mediante la especificación de uno de los siguientes valores de enumeración UIModalPresentationStyle:

  • FullScreen, que establece el estilo de presentación modal para abarcar toda la pantalla. De forma predeterminada, las páginas modales se muestran con este estilo de presentación.
  • FormSheet, que establece que el estilo de presentación modal se centre en y sea menor que la pantalla.
  • Automatic, que establece el estilo de presentación modal en el valor predeterminado elegido por el sistema. Para la mayoría de los controladores de vista, UIKit asigna esto a UIModalPresentationStyle.PageSheet, pero algunos controladores de vista del sistema pueden asignarlo a un estilo diferente.
  • OverFullScreen, que establece el estilo de presentación modal para cubrir la pantalla.
  • PageSheet, que establece el estilo de presentación modal para cubrir el contenido subyacente.

Además, el método GetModalPresentationStyle se puede usar para recuperar el valor actual de la enumeración UIModalPresentationStyle que se aplica a Page.

El resultado es que se puede establecer el estilo de presentación modal en un objeto Page:

Estilos de presentación modal

Nota:

Las páginas que usan esta plataforma específica para establecer el estilo de presentación modal deben usar la navegación modal. Para obtener más información, vea Xamarin.Forms Páginas modales.