Xamarin.Forms Kuas: Gradien Radial
Kelas ini RadialGradientBrush
berasal dari GradientBrush
kelas , dan melukis area dengan gradien radial, yang memadukan dua warna atau lebih di lingkaran. GradientStop
objek digunakan untuk menentukan warna dalam gradien dan posisinya. Untuk informasi selengkapnya tentang GradientStop
objek, lihat Xamarin.Forms Sikat: Gradien.
Kelas RadialGradientBrush
menentukan properti berikut:
Center
, dari jenisPoint
, yang mewakili titik tengah lingkaran untuk gradien radial. Nilai default properti ini adalah (0,5,0,5).Radius
, dari jenisdouble
, yang mewakili radius lingkaran untuk gradien radial. Nilai default properti ini adalah 0,5.
Properti ini didukung oleh BindableProperty
objek, yang berarti bahwa properti ini dapat menjadi target pengikatan data, dan ditata.
Kelas ini RadialGradientBrush
juga memiliki IsEmpty
metode yang mengembalikan bool
yang mewakili apakah kuas telah diberi objek apa pun GradientStop
.
Catatan
Gradien radial juga dapat dibuat dengan radial-gradient()
fungsi CSS.
Membuat RadialGradientBrush
Hentian gradien radial diposisikan di sepanjang sumbu gradien yang ditentukan oleh lingkaran. Sumbu gradien memancar dari tengah lingkaran ke lingkarnya. Posisi dan ukuran lingkaran dapat diubah menggunakan sifat dan Radius
kuasCenter
. Lingkaran menentukan titik akhir gradien. Oleh karena itu, pemberhentian gradien pada 1.0 mendefinisikan warna pada lingkar lingkaran. Gradien berhenti pada 0,0 mendefinisikan warna di tengah lingkaran.
Untuk membuat gradien radial, buat RadialGradientBrush
objek dan atur properti dan Radius
.Center
Kemudian, tambahkan dua objek atau lebih GradientStop
ke RadialGradientBrush.GradientStops
koleksi, yang menentukan warna dalam gradien dan posisinya.
Contoh XAML berikut menunjukkan RadialGradientBrush
yang ditetapkan sebagai Background
dari Frame
:
<Frame BorderColor="LightGray"
HasShadow="True"
CornerRadius="12"
HeightRequest="120"
WidthRequest="120">
<Frame.Background>
<!-- Center defaults to (0.5,0.5)
Radius defaults to (0.5) -->
<RadialGradientBrush>
<GradientStop Color="Red"
Offset="0.1" />
<GradientStop Color="DarkBlue"
Offset="1.0" />
</RadialGradientBrush>
</Frame.Background>
</Frame>
Dalam contoh ini, latar belakang dicat Frame
dengan RadialGradientBrush
yang menginterpolasi dari merah ke biru tua. Bagian tengah gradien radial diposisikan di tengah Frame
:
Contoh XAML berikut memindahkan pusat gradien radial ke sudut Frame
kiri atas :
<!-- Radius defaults to (0.5) -->
<RadialGradientBrush Center="0.0,0.0">
<GradientStop Color="Red"
Offset="0.1" />
<GradientStop Color="DarkBlue"
Offset="1.0" />
</RadialGradientBrush>
Dalam contoh ini, latar belakang dicat Frame
dengan RadialGradientBrush
yang menginterpolasi dari merah ke biru tua. Bagian tengah gradien radial diposisikan di kiri Frame
atas :
Contoh XAML berikut memindahkan pusat gradien radial ke sudut Frame
kanan bawah :
<!-- Radius defaults to (0.5) -->
<RadialGradientBrush Center="1.0,1.0">
<GradientStop Color="Red"
Offset="0.1" />
<GradientStop Color="DarkBlue"
Offset="1.0" />
</RadialGradientBrush>
Dalam contoh ini, latar belakang dicat Frame
dengan RadialGradientBrush
yang menginterpolasi dari merah ke biru tua. Bagian tengah gradien radial diposisikan di kanan Frame
bawah :