Я добавил RoutingEffect в проекте Xamarin Form и PlatformEffect в моем проекте Xamarin.iOS.Это добавит эффект в Stacklayout.Stacklayout в этой демонстрации представляет собой пользовательскую панель навигации.Внизу панели навигации находится прокрутка с множеством ячеек (метка, запись, средство выбора).
Я реализовал в Android все в порядке.Но в iOS есть проблема: эффект тени не может перекрывать некоторые элементы управления, такие как: Entry, Editor, Picker.Не могли бы вы поделиться со мной, как это исправить?Это код в проекте Xamarin.iOS.
public class DropShadowEffect : PlatformEffect
{
protected override void OnAttached()
{
try
{
var effect = (myDemo.UIControls.DropShadowEffect)Element.Effects.FirstOrDefault(e => e is myDemo.UIControls.DropShadowEffect);
if (effect != null)
{
Container.Layer.CornerRadius = effect.Radius;
Container.Layer.ShadowColor = UIColor.Red.CGColor;// effect.Color.ToCGColor();
Container.Layer.ShadowOffset = new CGSize(effect.DistanceX, effect.DistanceY);
Container.Layer.ShadowOpacity = 0.8f;
Container.Layer.ShadowRadius = 2f;
Container.Layer.ShouldRasterize = true;
Container.Layer.MasksToBounds = false;
}
}
catch (Exception ex)
{
Console.WriteLine("Cannot set property on attached control. Error: {0}", ex.Message);
}
}
* Слишком сильный эффект тени Метка в порядке
* Эффект тени не можетналожение либо Пикер или Entry