Android でのボタンのパディングとシャドウ

この Android プラットフォーム固有のコントロールは、Xamarin.Forms ボタンが Android ボタンのパディングとシャドウの既定値を使用するかどうかを制御します。。 これを XAML で使用するには、Button.UseDefaultPaddingButton.UseDefaultShadow の添付プロパティを 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>

または、Fluent API を使用して C# から使用することもできます。

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

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

Button.On<Android> メソッドは、このプラットフォーム固有設定が Android 上でのみ実行されるように指定します。 Xamarin.Forms.PlatformConfiguration.AndroidSpecific 名前空間のメソッド Button.SetUseDefaultPaddingButton.SetUseDefaultShadow は、Xamarin.Forms ボタンが Android ボタンのパディングとシャドウの既定値を使用するかどうかを制御するために使用されます。 さらに、メソッド Button.UseDefaultPaddingButton.UseDefaultShadow を使用して、それぞれボタンがパディングの既定値とシャドウの既定値を使用するかどうかを返すことができます。

その結果、Xamarin.Forms ボタンは Android ボタンのパディングとシャドウの既定値を使用できるようになります。

Android ボタンの既定のパディングとシャドウの値

上のスクリーンショットでは、右側の Button が Android ボタンのパディングとシャドウの既定値を使用している点を除いて、各 Button が同じ定義を持っていることに注意してください。