Sdílet prostřednictvím


Stíny v editoru VisualElement v iOSu

Tato platforma pro iOS se používá k povolení stínu na platformě VisualElement. Využívá se v XAML nastavením VisualElement.IsShadowEnabled připojené vlastnosti na true, spolu s řadou dalších volitelných připojených vlastností, které řídí stín přetažení:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout Margin="20">
        <BoxView ...
                 ios:VisualElement.IsShadowEnabled="true"
                 ios:VisualElement.ShadowColor="Purple"
                 ios:VisualElement.ShadowOpacity="0.7"
                 ios:VisualElement.ShadowRadius="12">
            <ios:VisualElement.ShadowOffset>
                <Size>
                    <x:Arguments>
                        <x:Double>10</x:Double>
                        <x:Double>10</x:Double>
                    </x:Arguments>
                </Size>
            </ios:VisualElement.ShadowOffset>
         </BoxView>
        ...
    </StackLayout>
</ContentPage>

Alternativně ho můžete využívat z jazyka C# pomocí rozhraní FLUENT API:

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

var boxView = new BoxView { Color = Color.Aqua, WidthRequest = 100, HeightRequest = 100 };
boxView.On<iOS>()
       .SetIsShadowEnabled(true)
       .SetShadowColor(Color.Purple)
       .SetShadowOffset(new Size(10,10))
       .SetShadowOpacity(0.7)
       .SetShadowRadius(12);

Metoda VisualElement.On<iOS> určuje, že se tato platforma bude spouštět pouze v iOSu. Metoda VisualElement.SetIsShadowEnabled v Xamarin.Forms.PlatformConfiguration.iOSSpecific oboru názvů slouží k řízení, zda je v sadě .VisualElement Kromě toho lze vyvolat následující metody pro řízení stínu:

  • SetShadowColor – nastaví barvu stínu. Výchozí barva je Color.Default.
  • SetShadowOffset – nastaví posun stínu. Posun změní směr přetypování stínu a je zadán jako Size hodnota. Hodnoty Size struktury jsou vyjádřeny v jednotkách nezávislých na zařízeních, přičemž první hodnota je vzdálenost vlevo (záporná hodnota) nebo vpravo (kladná hodnota) a druhá hodnota je vzdálenost nad (záporná hodnota) nebo nižší (kladná hodnota). Výchozí hodnota této vlastnosti je (0,0, 0,0), což vede ke stínu přetypování kolem každé strany VisualElement.
  • SetShadowOpacity – nastaví neprůhlednost stínu, přičemž hodnota je v rozsahu 0,0 (průhledná) na 1,0 (neprůhledná). Výchozí hodnota neprůhlednosti je 0,5.
  • SetShadowRadius – nastaví poloměr rozostření použitý k vykreslení stínu. Výchozí hodnota poloměru je 10,0.

Poznámka:

Stav stínu může být dotazován voláním GetIsShadowEnabledmetody , GetShadowColor, GetShadowOffset, GetShadowOpacitya GetShadowRadius metody.

Výsledkem je, že stín VisualElementv :

Povolené stínové stíny