Relleno y sombras de botón en Android

Descargar ejemploDescargar el ejemplo

Este control específico de la plataforma Android controla si Xamarin.Forms los botones usan el relleno predeterminado y los valores de sombra de los botones de Android. Se consume en XAML estableciendo las Button.UseDefaultPadding propiedades boolean adjuntas y Button.UseDefaultShadow en los valores:

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

El resultado es que Xamarin.Forms los botones pueden usar el relleno predeterminado y los valores de 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 anterior, Button tiene definiciones idénticas, salvo que la mano Button derecha usa los valores predeterminados de relleno y sombra de los botones de Android.