Symbol
Gunakan SF Symbols untuk menggambar ikon sistem, seperti speedometer, termometer. Ukuran font simbol, berat font, dan metode pewarnaan dapat diatur. Tersedia atau tidaknya simbol tertentu bergantung pada sistem perangkat.
Contoh
function main() {
return (
<Symbol
name="speedometer"
fontSize={36}
renderingMode="hierarchical"
color={$env.accent}
/>
);
}
Penggunaan
- name adalah nama SF Symbols, bukan berkas. fontSize mengukur simbol, width/height wadahnya. paletteColors mewarnai lapisan. Simbol yang tidak tersedia tidak berubah menjadi gambar.
- Ukuran angka memakai poin. auto mengukur isi; fill memakai alokasi induk. Tentukan ukuran wadah dahulu; fill atau teks panjang tidak memperbesar induk tetap.
Properti
namestringNama SF Symbols seperti speedometer; ketersediaan bergantung OS.
"location.north.fill"fontSize?numberUkuran font dalam poin.
14fontWeight?"ultraLight" | "thin" | "light" | "regular" | "medium" | "semibold" | "bold" | "heavy" | "black"Ketebalan font ultraLight hingga black; regular normal.
"regular"imageScale?"small" | "medium" | "large"Ukuran relatif small, medium atau large bersama fontSize.
"medium"renderingMode?"monochrome" | "hierarchical" | "palette" | "multicolor"monochrome satu warna, hierarchical gradasi nada, palette memakai paletteColors, multicolor mempertahankan warna asli.
"monochrome"color?PaintWarna gambar, termasuk warna HDR.
HDR($env.foreground)Satu hingga tiga warna untuk lapisan simbol dalam mode palette.
["red", "blue"]contentAnimation?ContentAnimationTransisi perubahan isi. Pilih type yang didukung; duration/delay dalam detik.
{type: "fade", duration: 0.25}Properti umum
width?number | "auto" | "fill"Lebar dalam poin, ukuran otomatis, atau memenuhi induk.
100height?number | "auto" | "fill"Tinggi dalam poin, ukuran otomatis, atau memenuhi induk.
80padding?numberPadding konten dalam poin.
0x?numberOffset visual dalam poin: x ke kanan, y ke bawah; ruang tata letak tidak berubah.
0y?numberOffset visual dalam poin: x ke kanan, y ke bawah; ruang tata letak tidak berubah.
0transform?ViewTransformTransformasi seluruh View tanpa mengubah tata letak. Translasi dalam poin, rotasi/kemiringan dalam derajat, skala 1 tetap, jangkar 0–1.
{rotation: 0}background?PaintWarna atau gradasi latar; clear berarti transparan.
"clear"opacity?numberOpasitas seluruh View: 0 transparan, 1 buram.
1cornerRadius?numberRadius sudut dalam poin.
0clipped?booleanPotong gambar yang melewati batas View.
falseclip?"rectangle" | "ellipse"Bentuk potongan rectangle atau ellipse; Material juga menerima false untuk mematikan.
"rectangle"mask?View | nullView masker alfa. Di tengah tanpa memengaruhi tata letak; null menonaktifkan masker.
<Circle width="fill" height="fill" background="white"/>zIndex?numberUrutan gambar antar saudara; nilai lebih besar di depan.
0blur?numberRadius buram dalam poin; 0 menonaktifkan.
4innerShadow?DrawingEffectWarna, opasitas, radius buram dan offset x/y efek; jarak dalam poin.
{color: HDR("black"), opacity: 0.5, radius: 4, x: 0, y: 2}glow?DrawingEffectWarna, opasitas, radius buram dan offset x/y efek; jarak dalam poin.
{color: HDR("cyan"), radius: 8, opacity: 0.8}shadowColor?ColorWarna bayangan luar.
HDR("black")shadowOpacity?numberOpasitas bayangan 0–1; 0 menyembunyikannya.
0shadowRadius?numberRadius buram bayangan luar dalam poin.
4shadowX?numberOffset bayangan dalam poin: x ke kanan, y ke bawah.
0shadowY?numberOffset bayangan dalam poin: x ke kanan, y ke bawah.
2animations?Animation[]Animasi perubahan properti. duration/delay dalam detik; from/to adalah ujung; repeat/autoreverse untuk pengulangan, wrap untuk periode.
[{property: "opacity", duration: 0.25, curve: "easeInOut"}]key?string | numberIdentitas stabil di antara elemen sejajar.
Contoh praktis
function main() {
return (
<HStack alignment="firstTextBaseline" spacing={8}>
<Symbol
name="speedometer"
fontSize={32}
renderingMode="hierarchical"
color={$env.accent}
/>
<Text fontSize={40}>78</Text>
<Text fontSize={14}>km/h</Text>
</HStack>
);
}
Animasi
widthheightpaddingxyopacitybackgroundcornerRadiusblurshadowColorshadowOpacityshadowRadiusshadowXshadowYfontSizecolortransform.translateXtransform.translateYtransform.scaleXtransform.scaleYtransform.rotationtransform.skewXtransform.skewYtransform.anchorXtransform.anchorYJika dihilangkan
Tabel menunjukkan perilaku penghilangan yang diverifikasi dari implementasi; contoh bukan default. Untuk hasil tetap beri nilai eksplisit; ukuran dan warna kontekstual bukan konstanta.
| Properti | Jika dihilangkan |
|---|---|
fontSize | 14 |
fontWeight | "regular" |
imageScale | "medium" |
renderingMode | "monochrome" |
color | HDR($env.foreground) |