VisualElement-Schlagschatten unter iOS
Diese plattformspezifische iOS-Plattform wird verwendet, um einen Schlagschatten auf einem VisualElement
. Sie wird in XAML genutzt, indem Sie die VisualElement.IsShadowEnabled
angefügte Eigenschaft true
auf eine Reihe zusätzlicher optionaler angefügter Eigenschaften festlegen, die den Schlagschatten steuern:
<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>
Alternativ kann sie mit der Fluent-API von C# genutzt werden:
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);
Die Methode VisualElement.On<iOS>
gibt an, dass diese plattformspezifische Funktion nur unter iOS ausführbar ist. Die VisualElement.SetIsShadowEnabled
Methode im Xamarin.Forms.PlatformConfiguration.iOSSpecific
Namespace wird verwendet, um zu steuern, ob ein Schlagschatten für die VisualElement
. Darüber hinaus können die folgenden Methoden aufgerufen werden, um den Schlagschatten zu steuern:
SetShadowColor
– legt die Farbe des Schlagschatten fest. Die Standardfarbe istColor.Default
.SetShadowOffset
– legt den Offset des Schlagschatten fest. Der Offset ändert die Richtung, in der der Schatten gegossen wird, und wird alsSize
Wert angegeben. DieSize
Strukturwerte werden in geräteunabhängigen Einheiten ausgedrückt, wobei der erste Wert der Abstand von links (negativer Wert) oder rechts (positiver Wert) und der zweite Wert der Abstand über (negativer Wert) oder darunter (positiver Wert) ist. Der Standardwert dieser Eigenschaft ist (0,0, 0,0), was dazu führt, dass der Schatten um jede Seite derVisualElement
.SetShadowOpacity
– legt die Deckkraft des Schlagschatten fest, wobei der Wert im Bereich 0,0 (transparent) auf 1,0 (undurchsichtig) liegt. Der Standarddurchsichtigkeitswert ist 0,5.SetShadowRadius
– legt den Weichzeichnerradius fest, der zum Rendern des Schlagschatten verwendet wird. Der Standardradiuswert ist 10,0.
Hinweis
Der Zustand eines Schlagschatten kann abgefragt werden, indem die GetIsShadowEnabled
Methoden , GetShadowColor
, , GetShadowOffset
und GetShadowOpacity
GetShadowRadius
methoden aufgerufen werden.
Das Ergebnis ist, dass ein Schlagschatten für ein VisualElement
: