シャドウはインターフェイスに視覚的な手がかりを作成します。これは、人間の脳がユーザーに表示されるUI要素を区別するのに役立ちます。 そして、これが実際にモバイルデザイナーがデザインに影を組み込むことを好む理由です。
DropShadowクラスは、レイアウトに適用できる構成可能なシャドウを作成する手段を提供します。
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レイアウトにはすでに影があります。 フレームのHasShadowプロパティは非推奨になります(Shadowプロパティの使用が
この仕様では、さまざまなXamarin.Formsレイアウトにシャドウを追加します。 ラベルなどの特定のコントロールはスコープに含まれません(後で来る可能性があります)。
素晴らしく見える!
素晴らしい! 私は本当にこの機能を見たいです。 ただし、グラデーションシャドウ機能を追加することで、これをもう少し改善できると思います。
@jsuarezruizがここで言及したように: https :
「Color」プロパティを拡張して、グラデーションと単色に新しい「ブラシ」を使用することをお勧めします。
<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 :
「Color」プロパティを拡張して、グラデーションと単色に新しい「ブラシ」を使用することをお勧めします。
サンプル
どう思いますか?