Android 'de görselleştirme yükseltmesi
Bu Android platforma özgü, API 21 veya üstünü hedefleyen uygulamalarda bulunan görsel öğelerin yükseltmesini veya Z düzenini denetlemek için kullanılır. Görsel öğenin yükseltilmesi, daha yüksek Z değerleri olan görsel öğelerle, daha düşük Z değerli görsel öğelerle birlikte çizim sırasını belirler. VisualElement.Elevationİliştirilmiş özelliği bir değere AYARLAYARAK xaml 'de kullanılır boolean :
<ContentPage ...
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
Title="Elevation">
<StackLayout>
<Grid>
<Button Text="Button Beneath BoxView" />
<BoxView Color="Red" Opacity="0.2" HeightRequest="50" />
</Grid>
<Grid Margin="0,20,0,0">
<Button Text="Button Above BoxView - Click Me" android:VisualElement.Elevation="10"/>
<BoxView Color="Red" Opacity="0.2" HeightRequest="50" />
</Grid>
</StackLayout>
</ContentPage>
Alternatif olarak, Fluent API kullanarak C# üzerinden de kullanılabilir:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...
public class AndroidElevationPageCS : ContentPage
{
public AndroidElevationPageCS()
{
...
var aboveButton = new Button { Text = "Button Above BoxView - Click Me" };
aboveButton.On<Android>().SetElevation(10);
Content = new StackLayout
{
Children =
{
new Grid
{
Children =
{
new Button { Text = "Button Beneath BoxView" },
new BoxView { Color = Color.Red, Opacity = 0.2, HeightRequest = 50 }
}
},
new Grid
{
Margin = new Thickness(0,20,0,0),
Children =
{
aboveButton,
new BoxView { Color = Color.Red, Opacity = 0.2, HeightRequest = 50 }
}
}
}
};
}
}
Button.On<Android>Yöntemi, platforma özgü bu platformun yalnızca Android 'de çalışacağını belirtir. VisualElement.SetElevationXamarin.Forms.PlatformConfiguration.AndroidSpecific Ad alanındaki yöntemi, görsel öğenin yükseltmesini null yapılabilir olarak ayarlamak için kullanılır float . Ayrıca, VisualElement.GetElevation yöntemi bir görsel öğenin yükseltme değerini almak için kullanılabilir.
Sonuç, görsel öğelerin yükseltilmesinin, daha yüksek Z değerleri olan görsel öğelerin, daha düşük Z değerleri olan occlude görsel öğeleri denetlenebilecek şekilde denetlenebilmesini sağlayacak. Bu nedenle, bu örnekte ikincisi ButtonBoxView daha yüksek bir yükseltme değeri içerdiğinden üzerinde işlenir:

Örneği indirin