Aracılığıyla paylaş


Android'de ImageButton Gölgeler

Android platformuna özgü bu, üzerinde ImageButtonbir gölgeyi etkinleştirmek için kullanılır. XAML'de, bindable özelliği trueolarak ayarlanarak ImageButton.IsShadowEnabled ve gölgeyi denetleyene bir dizi ek isteğe bağlı bağlanabilir özellik ile birlikte kullanılır:

<ContentPage ...
             xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout Margin="20">
       <ImageButton ...
                    Source="XamarinLogo.png"
                    BackgroundColor="GhostWhite"
                    android:ImageButton.IsShadowEnabled="true"
                    android:ImageButton.ShadowColor="Gray"
                    android:ImageButton.ShadowRadius="12">
            <android:ImageButton.ShadowOffset>
                <Size>
                    <x:Arguments>
                        <x:Double>10</x:Double>
                        <x:Double>10</x:Double>
                    </x:Arguments>
                </Size>
            </android:ImageButton.ShadowOffset>
        </ImageButton>
        ...
    </StackLayout>
</ContentPage>

Alternatif olarak, akıcı API kullanılarak C# dilinden de kullanılabilir:

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

var imageButton = new Xamarin.Forms.ImageButton { Source = "XamarinLogo.png", BackgroundColor = Color.GhostWhite, ... };
imageButton.On<Android>()
           .SetIsShadowEnabled(true)
           .SetShadowColor(Color.Gray)
           .SetShadowOffset(new Size(10, 10))
           .SetShadowRadius(12);

Önemli

Arka plan parçası ImageButton olarak bir gölge çizilir ve arka plan yalnızca özellik ayarlanırsa BackgroundColor çizilir. Bu nedenle, özellik ayarlanmadıysa ImageButton.BackgroundColor bir gölge çizilmeyecektir.

yöntemi, ImageButton.On<Android> platforma özgü bu uygulamanın yalnızca Android'de çalışacağını belirtir. ImageButton.SetIsShadowEnabled ad alanında Xamarin.Forms.PlatformConfiguration.AndroidSpecific yöntemi, üzerinde ImageButtonbir gölgenin etkinleştirilip etkinleştirilmediğini denetlemek için kullanılır. Ayrıca, gölgeyi denetlemek için aşağıdaki yöntemler çağrılabilir:

  • SetShadowColor – gölgenin rengini ayarlar. Varsayılan renk şeklindedir Color.Default.
  • SetShadowOffset – gölgenin uzaklığını ayarlar. Uzaklık, gölgenin yayın yönünü değiştirir ve değer Size olarak belirtilir. Yapı Size değerleri cihazdan bağımsız birimler halinde ifade edilir ve ilk değer sola (negatif değer) veya sağa (pozitif değer) uzaklık, ikinci değer ise yukarıdaki uzaklık (negatif değer) veya altı (pozitif değer) olur. Bu özelliğin varsayılan değeri (0,0, 0,0) değeridir ve gölgenin öğesinin her tarafında atılmasıyla ImageButtonsonuçlanır.
  • SetShadowRadius– gölgeyi işlemek için kullanılan bulanıklaştırma yarıçapını ayarlar. Varsayılan yarıçap değeri 10,0'dır.

Not

Bir gölgenin durumu, , , GetShadowColorGetShadowOffsetve GetShadowRadius yöntemleri çağrılarak GetIsShadowEnabledsorgulanabilir.

Sonuç, bir gölgenin üzerinde ImageButtonetkinleştirilebileceğidir:

Gölge gölgeli ImageButton