Compartir vía


Relleno y sombras de los botones en Android

Esta característica específica de la plataforma Android controla si los botones de Xamarin.Forms usan los valores predeterminados de relleno y sombra de los botones de Android. Se consume en XAML estableciendo las propiedades adjuntas Button.UseDefaultPadding y Button.UseDefaultShadow en valores boolean:

<ContentPage ...
            xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
        ...
        <Button ...
                android:Button.UseDefaultPadding="true"
                android:Button.UseDefaultShadow="true" />         
    </StackLayout>
</ContentPage>

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

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

button.On<Android>().SetUseDefaultPadding(true).SetUseDefaultShadow(true);

El método Button.On<Android> especifica que esta plataforma específica solo se ejecutará en Android. Los métodos Button.SetUseDefaultPadding y Button.SetUseDefaultShadow, del espacio de nombres Xamarin.Forms.PlatformConfiguration.AndroidSpecific, se usan para controlar si los botones Xamarin.Forms usan los valores predeterminados de relleno y sombra de los botones de Android. Además, los métodos Button.UseDefaultPadding y Button.UseDefaultShadow se pueden usar para devolver información sobre si un botón usa los valores predeterminados de relleno y sombra, respectivamente.

El resultado es que los botones Xamarin.Forms pueden usar los valores predeterminados de relleno y sombra de los botones de Android:

Relleno predeterminado y valores de sombra en botones de Android

Tenga en cuenta que en la captura de pantalla encima de cada Button tiene definiciones idénticas, salvo que el Button la derecha usa los valores de relleno y sombra predeterminados de los botones de Android.