阴影在界面中创建视觉提示,这有助于人脑区分用户看到的 UI 元素。 而且,这就是为什么实际上移动设计师喜欢在他们的设计中加入阴影的原因。
DropShadow类提供了创建可应用于Layout 的可配置阴影的方法。
public class DropShadow : BindableObject
{
public static readonly BindableProperty RadiusProperty = BindableProperty.Create(
nameof(Radius), typeof(double), typeof(DropShadow), 10.0d);
public double Radius
{
get => (double)GetValue(RadiusProperty);
set => SetValue(RadiusProperty, value);
}
public static readonly BindableProperty ColorProperty = BindableProperty.Create(
nameof(Color), typeof(Color), typeof(DropShadow), Color.Black);
public Color Color
{
get => (Color)GetValue(ColorProperty);
set => SetValue(ColorProperty, value);
}
public static readonly BindableProperty OffsetProperty = BindableProperty.Create(
nameof(Offset), typeof(Point), typeof(DropShadow), new Point(1, 1));
public Point Offset
{
get => (Point)GetValue(OffsetProperty);
set => SetValue(OffsetProperty, value);
}
public static readonly BindableProperty OpacityProperty = BindableProperty.Create(
nameof(Opacity), typeof(double), typeof(DropShadow), 1.0d);
public double Opacity
{
get => (double)GetValue(OpacityProperty);
set => SetValue(OpacityProperty, value);
}
}
让我们看一个使用 C#、XAML 和 CSS 的示例。
var layout = new Grid();
var shadow = new DropShadow ();
shadow.Radius = 12;
shadow.Color = Color.Red;
shadow.Offset = new Point (12, 18);
shadow.Opacity = 0.75d;
layout.Shadow = shadow;
<Grid>
<Grid.Shadow>
<DropShadow
Radius="12"
Color="Red"
Offset="12, 18"
Opacity="0.75" />
</Grid.Shadow>
</Grid>
box-shadow: 12px 18px 12px 12px red;
我们已经在一些 Xamarin.Forms 布局中有阴影。 Frame 的 HasShadow 属性将被弃用(它仍然可以使用,但建议使用 Shadow 属性)。
在本规范中,我们将阴影添加到不同的 Xamarin.Forms布局。 特定控件,例如标签,不属于范围(它们可能会在以后出现)。
看起来很棒!
惊人的! 我真的很想看到这个功能。 但是,我认为我们可以借此机会通过添加渐变阴影功能来进一步改进这一点。
正如@jsuarezruiz在这里提到的: https :
我的建议是增强“颜色”属性,将新的“画笔”用于渐变和纯色。
<Grid>
<Grid.Shadow>
<DropShadow
Radius="12"
Offset="12, 18"
Opacity="0.75">
<DropShadow.Color>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Color="Yellow" Offset="0.0" />
<GradientStop Color="Red" Offset="0.25" />
<GradientStop Color="Blue" Offset="0.75" />
<GradientStop Color="LimeGreen" Offset="1.0" />
</LinearGradientBrush>
</DropShadow.Color>
</DropShadow>
</Grid.Shadow>
</Grid>
你怎么认为?
为神经形态设计添加多个阴影可能很棒。
这是新时尚的东西...
最有用的评论
惊人的! 我真的很想看到这个功能。 但是,我认为我们可以借此机会通过添加渐变阴影功能来进一步改进这一点。
正如@jsuarezruiz在这里提到的: https :
我的建议是增强“颜色”属性,将新的“画笔”用于渐变和纯色。
样本
你怎么认为?